第一,为了使用户不要接触那些他们不该接触的部分,这部分队友类类部的操作又是必要的,但是它并不属于客户端程序员所需接口的一部分,只将方法和属性指定为private,对客户端程序而言时一种服务。
第二个原因,为了让类库设计者可以更改类的内部工作方式,而不必担心这样会对客户端程序员产生重大的影响。如果接口和实现可以被明确的隔离和加以保护,那么就可以实现这一目的,而不必客户端程序员重新编写代码。
第一,为了使用户不要接触那些他们不该接触的部分,这部分队友类类部的操作又是必要的,但是它并不属于客户端程序员所需接口的一部分,只将方法和属性指定为private,对客户端程序而言时一种服务。
第二个原因,为了让类库设计者可以更改类的内部工作方式,而不必担心这样会对客户端程序员产生重大的影响。如果接口和实现可以被明确的隔离和加以保护,那么就可以实现这一目的,而不必客户端程序员重新编写代码。