意见箱
恒创运营部门将仔细参阅您的意见和建议,必要时将通过预留邮箱与您保持联络。感谢您的支持!
意见/建议
提交建议

Ruby中如何使用多态性

来源:佚名 编辑:佚名
2024-06-04 14:02:30

在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

通过方法重载和方法重写,可以实现多态性,使得不同的对象可以以统一的方式进行操作,提高代码的灵活性和可维护性。


Ruby中如何使用多态性

本网站发布或转载的文章均来自网络,其原创性以及文中表达的观点和判断不代表本网站。
上一篇: Rails中怎么使用WebSocket进行实时通信 下一篇: Rails中怎么实现用户认证