6

これの何が問題なのset/getですか?

class Pupil
  def name
    @name
  end

  def name=(name)
    @name = name
  end

  def age
    @age
  end

  def age=(age)
    @age
  end
end

さらに同じように、名前、年齢、性別の 3 つの引数を持つ子クラスがあった場合、セットは性別のみの子のメソッドを取得します。set/get メソッドを表示して、子クラスで初期化してください。

4

2 に答える 2

14
def age=(age)
    @age
  end

する必要があります

  def age=(age)
    @age = age
  end

get/set を、getter/setter を提供する attr_accessor に置き換えることで、コードを美しくすることもできます。

 class Pupil
   attr_accessor :age,:name
 end
于 2012-07-30T06:55:49.140 に答える
1

を設定するのを忘れました@age = age

于 2012-07-30T06:53:11.940 に答える