我想創建一個基類來處理所有的方法。在這種情況下,我將如何使用ruby來實現這一點?如何獲得子類變量回到父類ruby
class Dog
def initialize
@breed = "good breed"
end
def show_dog
puts "#{self.class.first_name} of breed #{@breed}"
end
end
class Lab < Dog
attr_reader :first_name
def initialize
@first_name = "good dog"
end
end
lb = Lab.new()
lb.show_dog
預期的結果將是「好品種良種狗」 預先感謝您:)
紅寶石你只需要做'first_name'調用FIRST_NAME方法 - 它不像C++在某些情況下,您需要明確要調用哪個first_name實現。 self.class.first_name嘗試調用名爲first_name的類方法。 – 2013-03-28 10:19:44