我试图理解类中getter/setter方法的用法.假设我们有一个名为A的类,其中包含一些公共实例变量,后跟一个带参数的构造函数,其中参数从另一个类(main)传递给它.在构造函数中,我们让那些实例变量等于传递的内容.
现在,如果这个类被另一个程序员使用,没有什么能阻止他们直接访问/更改实例变量到无效的东西.通过将实例变量设为私有,我们可以消除对这些变量的访问.但是,如果我们想要间接地或在某些特定条件下更新/更改这些实例变量,或者只是让该人可以访问实例变量,我们将为此创建一个getter/setter对.
好处?:1.
仅在set()方法下的某些有效原因下
更改实例变量2.因此我们可以显示实例变量实际上是什么而不给使用此类的程序员更改它的能力.
这是正确的解释吗?
封装 - 指将所有相关成员(变量和方法)保存在一个对象中.将成员变量指定为私有可以隐藏变量和方法.对象应该从外部视图隐藏其内部工作.良好的封装通过防止对象以意想不到的方式相互交互来提高代码模块性,从而使未来的开发和重构工作变得容易.

能够封装类的成员对于安全性和完整性非常重要.我们可以保护变量不受可接受的值的影响.上面的示例代码描述了如何使用封装来保护MyMarks对象不具有负值.对成员变量vmarks的任何修改只能通过setter方法执行setMarks(int mark).这可以通过抛出异常来防止对象MyMarks出现任何负值.
| 归档时间: |
|
| 查看次数: |
2047 次 |
| 最近记录: |