Ruby学习笔记-覆盖方法

本文探讨了在编程中方法覆盖的概念,特别是在Ruby语言中如何通过重新定义方法来改变类的行为。文章解释了当一个类的方法被多次定义时,最新定义的方法会覆盖先前的定义,这在实现类继承和多态时尤为重要。
Clss Teacher
     def   speak
          puts "First speak"
     end
     def   speak
       puts "second speak"
     end
end

如果 两次调用类teacher实例 speak方法会发生什么,请求对象,执行该方法
Teacher.new.speak
打印结果为 “second speak” 第二个方法定义略占优势:输出的结果是从第二个方法定义而来,而不是第一个。覆盖一个方法的时候,新版本将取代之前的。
通常情况下是不会这样做的,当需要覆盖一个方法的时候,一般是需要编写一个继承自原始类的子类,并且希望它们有不同的行为。
也可以通过重开类定义的方式为一个类添加方法,或者覆盖它们。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值