关于访问限制符:protected

前面我们已经介绍了private和public,以及他们在派生类中的应用,这里结合书上的内容介绍protected。


protected

protected称为保护限制,他和private和public既有联系又有区别。

1.首先我们回顾下public,如果一个成员时是public,那么他既可以在类内直接访问也可以在类外通过对象直接访问。

2.而private修饰的数据成员只能在类内直接访问,而不能在类外通过对象直接访问,需要通过共有的函数成员(接口),并且private修饰的数据成员在派生类中也不能直接访问,因为虽然他继承到了子类中,但毕竟不是子类的,所以在子类中访问被继承的private数据成员需要通过被继承的父类的共有函数。

3.而protected修饰的成员,不管是数据成员还是函数成员,在外部和private修饰的一样,也就是不能通过对象直接访问,但可以通过类的公有函数。但是在内部和public修饰的一样,也就是在继承类中可以直接访问,不用再去用父类的共有方法,即在继承这一方面protected=public

4.总结:对于外部世界(类外),protected=private,对于内部世界(类内+继承),protected=public

注意:根据书中所说,数据成员最好使用private修饰,而不要使用protected,protected多用于修饰特定的成员函数,他让派生类能够访问公众不能使用的内部函数

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值