我正在做一些在互联网上找到的初学者类型的 OOP 练习。目前我的任务是创建两个类:
- 人:带有变量:姓名、姓氏、年龄。
- 歌曲:带变量:标题、作者(人物类型)、发行日期
问题是如何创建这个 Person 类型变量。我试过这个:
class Person
attr_accessor :name, :surname, :age
def initialize name, surname, age = nil
@name, @surname, @age = name, surname, age
end
end
class Song
attr_accessor :tite, :author, :date_of_issue
def initalize title, author , date_of_issue
@title, @author, @date_of_issue = title, Person.new, date_of_issue
end
end
当我尝试创建新对象时:
song1 = Song.new("All_you_need_is_love", "The_beattles", 1967)
我得到:
ArgumentError:参数数量错误(0 代表 2)
所以我有两个想法:
我的
Song
课程代码错误song1
对象初始化错误(因为参数数量)
你怎么看?