我正在学习Java,我的问题是为什么要在Java中使用访问说明符/修饰符?为什么我们需要使用Public,Private,Protected和Default访问类,方法或变量。如果我是程序员,那么显然我知道程序的一切。如果我是最终用户,那么我不知道程序是什么?那么我从哪里隐藏细节?数据隐藏在哪里?请以程序员的角度以及最终用户的角度帮助我一些例子。为什么要在Java中使用访问说明符/修饰符?
0
A
回答
2
通过阻止用户将组件的内部数据设置为无效或不一致状态,隐藏对象的内部可保护其完整性。
封装的一个好处是它可以通过允许开发人员限制软件组件之间的相互依赖性来降低系统复杂性,从而提高健壮性。 [1]
[1] http://en.wikipedia.org/wiki/Encapsulation_(object-oriented_programming)
1
随着软件设计师的点:实用和语义的原因。
变量描述对象实例的状态。受保护的变量是继承的。这是可行的,因为继承链中的类可以共享彼此的结构相似性。非继承变量保持私有状态。变量只在常量时才公开(公共静态最终变量)。
方法描述对象的行为。受保护的继承和公共方法的使用与变量几乎相同,除了变量描述状态时,方法描述行为。一个不同之处是使用包私有方法,这种方法通常在框架内部使用。
1
如果你确实需要一个实际的例子,假设你的FB密码的详细信息存储为一个私有变量,并且你的LoginID作为一个受保护的变量存储在FBDetails类中...... 现在任何人都可以继承FBDetails类获取您的LoginID,但显然没有人可以访问您的密码。
相关问题
- 1. 访问说明符和访问修饰符有什么区别?
- 2. 需要说明:java中的私有访问修饰符
- 3. 访问修饰符和访问说明符之间有什么区别
- 4. 如何在Java中使用访问修饰符(为什么使用getter方法?)
- 5. 在java中访问'final'修饰符类
- 6. 什么是访问修饰符
- 7. 访问修饰符 - 目的是什么?
- 8. Java:为什么构造函数具有访问修饰符?
- 9. 为什么Java限制隐藏方法的访问修饰符
- 10. Java - 访问说明符
- 11. 为什么要在servlet中使用public修饰符
- 12. Java访问修饰符:无修饰符与“默认”
- 13. 在java中省略访问说明符
- 14. 用Java中的访问修饰符重新声明变量
- 15. 为什么C++类没有类似Java的访问说明符?
- 16. 使用声明修改派生类中的访问说明符
- 17. 在java中使用访问修饰符的Intanstiate实体类
- 18. 访问说明符
- 19. 使用泛型作为java方法访问修饰符
- 20. Java访问修饰符优先
- 21. 关于java最终访问修饰符
- 22. Java默认访问修饰符
- 23. Typescript中公共类访问修饰符的用途是什么?
- 24. 访问修饰符“protected private”在visual C++中做什么?
- 25. Delphi访问修饰符
- 26. 内部访问修饰符
- 27. 库级访问修饰符
- 28. EventInfo访问修饰符
- 29. 动态访问修饰符
- 30. 练习访问修饰符