溫馨提示×

Ruby中如何使用多態性

小億
101
2024-06-03 14:42:13
欄目: 編程語言

在Ruby中,多態性可以通過方法重載和方法重寫來實現。方法重載是指在同一個類中定義多個同名方法,但參數列表不同,根據傳入的參數來調用不同的方法。方法重寫是指子類重寫父類的同名方法,實現不同的功能。

# 方法重載
class Animal
  def make_sound(sound)
    puts sound
  end

  def make_sound(sound1, sound2)
    puts "#{sound1} and #{sound2}"
  end
end

animal = Animal.new
animal.make_sound("Meow")  # 輸出 Meow
animal.make_sound("Woof", "Meow")  # 輸出 Woof and Meow

# 方法重寫
class Cat < Animal
  def make_sound(sound)
    puts "Cat says: #{sound}"
  end
end

cat = Cat.new
cat.make_sound("Meow")  # 輸出 Cat says: Meow

通過方法重載和方法重寫,可以實現多態性,使得不同的對象可以以統一的方式進行操作,提高代碼的靈活性和可維護性。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女