Ruby的protected, private方法

看了几个帖子将到这个,说的比较抽象,当然自己写一个程序测试测试也就懂了。


传送门:http://rubyer.me/blog/667/


这里归纳一下:


Protectedprivate都会被子类继承。

Private的调用,只能是本类的内部调用,前面不加任何实例,也就是只有本类可以调用,最原始的方法含义,基本上功能就是在这个类的内部封装一些功能

Protected 在类里面调用,但是调用者可以是别的对象(子类)

就是说private方法虽然可以被子类所继承,但是每个继承的类都只能在自己的类里面调用;

protected可以被子类继承,子类也可以在父类那里调用。


还不明白?

举个例子来说

你会两个东西

一个是讲家乡话,一个是撸管

你有了小孩,这个小孩也学会了你的两个看家本领,将家乡话和撸管

显然,你和你小孩都只能在自己一个人的时候看A片撸管,不能在别人面前撸。所以撸管这个方法是私有的,private方法只能自己调用。

你和你小孩之间可以互相将家乡话,所以protected的方法可以认为是家族方法

你和你家小孩不能在外人面前讲家乡话的,因为人家听不懂。所以你不能再别的类里面调用protected方法。


  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值