我问这个是因为我做了一个小挑战,所有的测试用例都失败了,我意识到我的代码是好的,让我告诉你发生了什么。
所以我有这样一段代码:
class Person
def initialize(name)
@name = name
end
def printName
return @name
end
end
human = Person.new('Josh')
puts human.printName
输出非常明显,但当我第一次尝试运行它时,我看到代码中有异常的raise关键字,代码是这样的,并给了我以下错误:
class Person
def initialize(name)
@name = name
raise "Implement intialize method"
end
def printName
return @name
raise "Implement print method"
end
end
human = Person.new('Josh')
puts human.printName
输出:initialize': Implement intialize method (RuntimeError)
只要我从构造函数中删除了raise关键字,测试用例就成功了,有人能解释一下为什么会发生这种情况吗?
1条答案
按热度按时间eqqqjvef1#
内核的
raise
方法在您的代码中设置时基本上会引发异常或RuntimeError ...看起来挑战期望您实现这些方法(暗示您将删除raise调用)