Maalesef kullanmak 'sadece' bir cevapta 'ama bu akostadinov'un sorusuna cevap olarak Hendrik'e "Bu, onun [Konstantin'in] yanıtından farklı mıdır?"
Hendrik'in, bir örnek mi, yoksa statik bir yönteme mi bağlı olduğuna göre, miras sınıfındaki & sınıfındaki yöntemlerden sabit erişmeye çalıştığını tahmin ediyorum. Bir örnek yönteminde beklediğiniz gibi davranıyor gibi görünüyor. Ama belki de belki de statik bir yöntem için nasıl beklemezsiniz. o Hendrik anlamına gelmez ne bile, bu dikkati olabilir:
Eğer Konstantin tam olarak sınıf tanımları var, ama böyle sınıf A'ya bir yöntem eklerseniz:
def self.print_const
puts CONST
end
Sonra A almak iki kere: Ancak
A.print_const # prints A
B.print_const # prints A
Sınıf'ı başvurarak A yöntemini tanımlamak edin:
def self.print_const
puts self::CONST
end
Öyleyse şu şekilde olsun:
A.print_const # prints A
B.print_const # prints B
Mükemmel, çok teşekkürler! – Tom
Yani ... bu, CONST kullanan A sınıfındaki her yeri değiştirmeden bunu yapmanın bir yolu olmadığı anlamına geliyor. – nohat
Evet. Sabit arama genellikle derleme zamanında ciltlenir. –