码迷,mamicode.com
首页 > 其他好文 > 详细

抽象类与接口的比较

时间:2016-07-30 00:29:25      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:

1.接口与类的比较
接口引入了另一个类别的数据类型,和类不同的是,接口永远不能实例化。
只能通过对实现接口的类的一个对象的引用来访问接口实例。不能用new操作符创建接口实例。
所以接口不能包含任何构造器或终结器。
2.抽象类和接口的比较

抽象类

接口

不能直接实例化,只能通过实例化一个派生类

不能直接实例化,只能通过实例化一个实现接口类型。

派生类要么自己也是抽象的,要么必须实现所有抽象成员

实现接口类型必须是实例化所用接口成员

可添加额外的非抽象成员,它们可由所有派生类继承,而不会破坏跨版本兼容性。

为接口添加额外的成员会破坏版本兼容性

可以声明属性和字段

可声明属性但不能声明字段

成员可以是实例、虚、抽象或静态的,而且非抽象成员可提供默认实现供派生类使用

所用成员都被自动看成是抽象成员,因此不能包含任何实现

派生类只能从一个基类派生(单继承)

实现类型可实现任意多的接口

抽象类与接口的比较

标签:

原文地址:http://www.cnblogs.com/gylhaut/p/5719898.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!