摘要:
我们知道,一般的面向对象语言,都会有类,而类成员一般有三种访问权限:公开,保护,私有。有些人说,“保护”似乎没有什么价值,还建议不用。有些人却认为,没有“保护”,举步维艰。我觉得,“保护”属于类库维护者,而“公开”属于类库使用者。只要我们明白这两个身份的不同,就好理解该如何使用“保护”了。比如,你本身是类库的设计者,或者是团队设计者之一,那么你也可能自己做自己的类库维护者。但是类库维护者并不好当。从接口的角度,“保护”成员对类库维护者来说是属于“接口”级别的,所谓接口,就要维持他的不变性。我们要维持接口的不变性,非常难,唯一的办法就是尽量减少“接口”,将不必要的封装起来。但是“保护”成员却将很 阅读全文