在Ruby中,封装性是通过将数据和操作这些数据的方法组合在一起来实现的。要实现类扩展,可以使用继承和方法重写。以下是一个简单的示例:
# 基类
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"
在这个例子中,我们创建了一个名为Animal
的基类,它具有一个属性name
和一个方法speak
。然后,我们创建了一个名为Dog
的子类,它继承了Animal
类,并重写了speak
方法。这样,当我们创建一个Dog
对象并调用speak
方法时,它将执行子类中的版本,而不是基类中的版本。这就是Ruby中实现类扩展的方法。