22 将成员变量声明为private 原因 1.可细微划分访问控制、给予class作者充分的实现弹性。 2. public成员变量没有封装性,当改变它时(比如移除),将会有许多客户代码被破坏; 3. 与1相似,对于protected成员变量,改变它将会影响derived class。 注 不封装意味着不可改变。protected 不比 public更具封装性。