条款22:将成员变量声明为private
将成员变量隐藏在函数接口的背后,可以为“所有可能的实现”提供弹性。例如,这可使得成员变量被读或写时轻松通
知其它对象、可以验证calss的约束条件以及函数的前提和事后状态、可以在多线程环境中执行同步控制......
不封装意味不可改变!成员变量的封装性与“成员变量的内容改变时所坏量的代码数量”成反比。
请记住:
- 切记将成员变量声明为private。这可赋予客户访问数据的一致性、可细微划分访问控制、允许约束条件获得保护,并提供class作者以充分的实现弹性。
- protected并不比public更具封装性。
本文探讨了将类的成员变量声明为private的重要性。通过封装成员变量,可以提高代码的一致性和安全性,允许更细粒度的访问控制并保护类的约束条件。此外,private封装还为类的设计者提供了更多的实现灵活性。
462

被折叠的 条评论
为什么被折叠?



