メソッドの戻り値は、最後のステートメントの値です。これは、内部でメソッドMyclass.new
の以下の定義に従うことを意味します。initialize
super
class Myclass < String
def initialize(arg)
super(arg.to_s)
"something"
end
end
返すべき"something"
です。しかし、"test"
代わりに次のように返します。
Myclass.new("test") # => "test"
なんで?