我似乎无法解决此错误:
NoMethodError:nil的未定义方法'+':NilClass
这是我正在加载的文件中的代码:
def test_person_name
fred = Person.new("Fred", "Jones", 43)
result = fred.name
assert_equals("Fred Jones", result, "Name was wrong.")
end
这是另一个代码:
class Person
def initialize(first_name, last_name, age)
@first_name = first_name
@last_name = last_name
@age = age
end
def name()
@first_name + " " + @last_name
end
def age()
@age
end
def ==(other)
other.name == name
end
end
答案 0 :(得分:2)
如果@first_name
为零,则唯一可能出现此错误的方法。根据你所写的内容,这是不可能的。
事实上,如果我加载您的课程,请按照您已完成的方式创建Person
,我会得到#Fred; Fred Jones"当我致电fred.name
时。
因此,唯一可能的原因是您发布到此问题的代码与您实际运行的代码不同。或者,实际错误发生在与您发布的代码不同的地方。