gpt4 book ai didi

Ruby:子类的参数数量错误会更改参数数量

转载 作者:太空宇宙 更新时间:2023-11-03 18:15:24 26 4
gpt4 key购买 nike

我是 Ruby 的新手,我一直在寻找我的问题的答案,但还没有找到答案。这是我的代码:

class Animal
def initialize(aName, anAge)
@name = aName
@age = anAge
end
end

class Cat < Animal
def initialize(aName, anAge, aBreed)
@breed = aBreed
super(aName, anAge, aBreed)
end
end

当我尝试通过定义三个参数创建一个新的 cat 对象时,它显示:ArgumentError:参数数量错误(3 对 2)。但是当我用两个参数做同样的事情时,我得到了(2 for 3)。

我怎么也看不出来。。。感谢您的帮助!

最佳答案

您的父类(super class)Animal 构造函数只需要两个参数aNameanAge。所以你应该只将 Cat 的前两个参数传递给 Animal

class Cat < Animal
def initialize(aName, anAge, aBreed)
@breed = aBreed
super(aName, anAge)
end
end

关于Ruby:子类的参数数量错误会更改参数数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27115236/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com