SORU
7 Kasım 2009, CUMARTESİ


Örnek değişken: bireysel vs @

Burada bazı kod:

class Person
  def initialize(age)
    @age = age
  end

  def age
    @age
  end

  def age_difference_with(other_person)
    (self.age - other_person.age).abs
  end

  protected :age
end

Bilmek istediğim age_difference_with yöntem @age self.age kullanma arasında fark vardır.

CEVAP
7 Kasım 2009, CUMARTESİ


Doğrudan @age yazı örneği @age değişken erişir. Yazılı self.age söyler nesne göndermek kendi mesaj age, genellikle dönüş örneği değişken @age — ama yapabileceğim herhangi bir sayıda diğer şeyler nasıl bağlı age yöntem uygulanır belirli bir alt sınıfı. Örneğin, her zaman kendi yaş aslında en az 10 yaş daha genç raporlarını MiddleAgedSocialite bir sınıf olabilir. Ya da daha pratik olarak, PersistentPerson bir sınıf tembel kalıcı bir mağazadan bu veri, bir karma tüm kalıcı veri önbellek okuyabilir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AFISHAL

    AFISHAL

    7 Mart 2009
  • itfigueres

    itfigueres

    12 EKİM 2013
  • MrChiCity3

    MrChiCity3

    14 NİSAN 2008