在讲到访问控制这一节的时候,书上介绍完private,package,protected和public四种访问修饰符后,出现这样一句话:
You should view public and protected members as contractual, because they can be relied on by code you do not control. Changing them can be impossible after that code relies on public or protected functionality. Package and private access are part of your implementation, hidden from outsiders (classes in the same package should be related).大意大概是说:
你应该把public和protected的成员看作是一种协议,因为你无法控制的代码也可以依赖于他们。在那些代码依赖于public或者protected功能之后,就不可能再改变他们了。package和private访问权限是你的具体实现的一部分,并且隐藏于外界的(同一包中的类应该是相关的)。感觉这句话特别隐晦,特别难以理解,作者在此到底是想说明什么意思呢?什么叫做“依赖于protected或者public之后,就不可改变了”?什么又是“package和private访问权限是你的具体实现的一部分”?
You should view public and protected members as contractual, because they can be relied on by code you do not control. Changing them can be impossible after that code relies on public or protected functionality. Package and private access are part of your implementation, hidden from outsiders (classes in the same package should be related).大意大概是说:
你应该把public和protected的成员看作是一种协议,因为你无法控制的代码也可以依赖于他们。在那些代码依赖于public或者protected功能之后,就不可能再改变他们了。package和private访问权限是你的具体实现的一部分,并且隐藏于外界的(同一包中的类应该是相关的)。感觉这句话特别隐晦,特别难以理解,作者在此到底是想说明什么意思呢?什么叫做“依赖于protected或者public之后,就不可改变了”?什么又是“package和private访问权限是你的具体实现的一部分”?
解决方案 »
- 求高手帮忙写个经验换算等级的函数
- sycronized 问题,同一个程序两个结果?
- 会使用JBuilder2006的高手请进,有关jtable和jtree,急!
- replace的问题
- 请问大家有没有关于java的图形设计和swing设计的比较好的网站?
- 在两个线程中,怎样操作同一个ArrayList,并且一个线程访问ArrayList时,另一个线程不能访问?在线等
- 用FileInputStream从一文本文件中读取中文内容,显示出来为何是乱码?
- synchronized关键字有什么作用? 谢谢
- 小弟求救!
- 请问如何能在网络传送中文信息??
- 如何让一个.java文件调用另一个.java文件的主函数
- java多线程问题
package和private实现具体功能