0

インターネットで見つけた初心者向けの OOP 演習を行っています。現在、私の仕事は2つのクラスを作成することです:

  • 人物: 変数: 名前、姓、年齢。
  • 曲: 変数: タイトル、作者 (人物タイプ)、発行日

問題は、この 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: 引数の数が間違っています (2 に対して 0)

だから私は2つのアイデアを得ました:

  1. クラスSongコードが間違っています

  2. song1オブジェクトの初期化が間違っています (引数の数のため)

どう思いますか?

4

1 に答える 1

2

Songinitializeで正しくつづる必要があります。また、Personコンストラクターには少なくとも 2 つの引数が必要であることも考慮してください。

于 2012-08-18T16:22:42.760 に答える