接口抽象类区别

 

        接口              抽象类

多继承     支持              不支持

类型限制    没有              有,只能是引用类型

方法实现    继承类型中必须给出方法实现   继承类中可以不给出

扩展性     比较麻烦            相对较灵活

多层继承    比较麻烦,需要借助虚函数    比较灵活

回掉      支持              不支持

构造函数    没有              有,虽然不能实例化

 

抽象实现了把可变与不可变分离。

抽象类: 一种不能实例化而必须从中继承的类。

制定规则,约束子类,传递一些特性给子类。不能被密封,必须为在该类的基类列表中列出接口的所有成员,提供它自己的实现,可以为虚。允许抽象类将接口方法映射到抽象方法上。

接口:类之间交互时遵守的一个协议。

本质就是特殊的抽象类。定义规则,降低耦合。不具备继承的任何特点。

 

posted @ 2017-05-10 09:29  jechsky  阅读(87)  评论(0编辑  收藏  举报