Ruby中繼承是怎么工作的

小億
84
2024-04-12 14:19:04

在Ruby中,繼承是通過(guò)使用關(guān)鍵字<來(lái)實(shí)現(xiàn)的。當(dāng)一個(gè)類(lèi)繼承另一個(gè)類(lèi)時(shí),子類(lèi)將繼承父類(lèi)的所有屬性和方法。子類(lèi)可以覆蓋父類(lèi)中的方法,也可以添加新的方法。

例如,下面是一個(gè)簡(jiǎn)單的示例,展示了如何在Ruby中實(shí)現(xiàn)繼承:

class Animal
  def speak
    puts "I am an animal"
  end
end

class Dog < Animal
  def speak
    puts "Woof!"
  end
end

animal = Animal.new
animal.speak  # Output: I am an animal

dog = Dog.new
dog.speak  # Output: Woof!

在上面的示例中,Dog類(lèi)繼承了Animal類(lèi),并覆蓋了Animal類(lèi)中的speak方法。因此,創(chuàng)建一個(gè)Dog對(duì)象并調(diào)用speak方法時(shí),輸出的內(nèi)容是"Woof!“而不是"I am an animal”。

0