标签:团队 没有 兼容性 部署 一个 访问级别 protect 功能 com
当创建一个将广泛分发或重用的类库时(尤其是客户端),使用优先于接口的抽象类。因为这能简化版本控制。这是微软团队开发基础类库时的惯例(COM除外,因为COM是围绕接口设计的)。
使用抽象类为类型家族定义共同的基类。
使用抽象类提供默认的行为。
子类只是类逻辑上属于的层次结构中的基类。
当创建一个可以被随意更改的独立项目时,使用优先于抽象类的接口,因为它提供更多的设计灵活性。
使用接口来引入多态行为而无需子类化并模拟多重继承 - 允许特定类型支持多种行为。
使用接口为值类型设计多态层次结构。
当真正的意图是协议永远不变,那么使用接口。
设计良好的接口定义了一个特定的功能范围,拆分不包含相关功能的接口。
标签:团队 没有 兼容性 部署 一个 访问级别 protect 功能 com
原文地址:https://www.cnblogs.com/WinHEC/p/Abstract-Class_And_Interface.html