在Ruby中,封裝性是通過將數(shù)據(jù)和操作這些數(shù)據(jù)的方法組合在一起來實現(xiàn)的。要實現(xiàn)類擴展,可以使用繼承和方法重寫。以下是一個簡單的示例:
# 基類
class Animal
attr_accessor :name
def initialize(name)
@name = name
end
def speak
puts "The animal makes a sound"
end
end
# 子類
class Dog < Animal
def speak
puts "The dog barks"
end
end
# 使用子類
my_dog = Dog.new("Buddy")
my_dog.speak # 輸出 "The dog barks"
在這個例子中,我們創(chuàng)建了一個名為Animal
的基類,它具有一個屬性name
和一個方法speak
。然后,我們創(chuàng)建了一個名為Dog
的子類,它繼承了Animal
類,并重寫了speak
方法。這樣,當(dāng)我們創(chuàng)建一個Dog
對象并調(diào)用speak
方法時,它將執(zhí)行子類中的版本,而不是基類中的版本。這就是Ruby中實現(xiàn)類擴展的方法。