Ruby類定義如何處理多重繼承

小樊
81
2024-11-06 07:07:40
欄目: 編程語言

在Ruby中,類可以通過多重繼承來繼承多個(gè)父類。要實(shí)現(xiàn)多重繼承,只需在定義類時(shí)使用class_name ... end語法,并在類定義中列出所有父類。這些父類將按列表順序組合成一個(gè)新的超類,新類將繼承這些父類的所有方法和屬性。

以下是一個(gè)簡(jiǎn)單的示例,說明如何在Ruby中處理多重繼承:

# 定義第一個(gè)父類
class Parent1
  def method1
    puts "Method from Parent1"
  end

  def method2
    puts "Method from Parent1"
  end
end

# 定義第二個(gè)父類
class Parent2
  def method3
    puts "Method from Parent2"
  end

  def method4
    puts "Method from Parent2"
  end
end

# 定義子類,繼承Parent1和Parent2
class Child < Parent1, Parent2
end

# 創(chuàng)建子類實(shí)例
child = Child.new

# 調(diào)用從父類繼承的方法
child.method1
child.method2
child.method3
child.method4

輸出:

Method from Parent1
Method from Parent1
Method from Parent2
Method from Parent2

在這個(gè)例子中,我們定義了兩個(gè)父類Parent1Parent2,以及一個(gè)從這兩個(gè)父類繼承的子類Child。當(dāng)我們創(chuàng)建Child類的實(shí)例并調(diào)用其方法時(shí),我們可以看到它繼承了Parent1Parent2的所有方法。

0