接口和抽象类的区别
来源:互联网 发布:网站内链优化 编辑:程序博客网 时间:2024/06/17 04:49
接口
- 使用interface定义接口。
- 接口无法被实例化。
- 是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现。
抽象类
- 使用abstract定义
- 抽象类不能创建实例对象
- 含有抽象方法的类必须定义为abstract class 类型的,abstract class中的方法不必是抽象的
- 抽象类中定义的抽象方法必须被子类实现 ,所以抽象方法不能定义为抽象构造方法和抽象静态方法
- 如果子类没有实现父类中的所有方法 那么子类也必须定义为abstract class。
接口与抽象类的区别
语法上的区别
- 抽象类中可以有构造方法,接口中不能有构造方法。
- 抽象类中可以有普通成员变量,接口中不能有普通成员变量。
- 抽象类和接口中都可以有静态成员变量,接口中的静态成员变量访问类型必须是public static final 类型的。
- 抽象类中的抽象方法访问类型必须是public abstract , 接口中的抽象方法访问类型是public。
- 抽象类中可以有静态方法 , 接口中不能有静态方法。
- 一个类只能继承一个抽象类 但可以实现多个接口。
应用上的区别
- 接口多实现在设计方面,相当于定义一个模板,
- 抽象类更多应用于代码实现的方面(如: 代码的重用)。
阅读全文
0 0
- 类的抽象和接口的区别
- 抽象类和抽象方法以及和接口的区别
- 抽象类和接口类的区别
- 抽象类和接口类的区别
- 接口类和抽象类的区别
- 接口类和抽象类的区别
- 接口类和抽象类的区别
- 接口类和抽象类的区别
- 抽象类和接口的区别
- 抽象类和接口的区别
- 接口和抽象类的区别
- 抽象类和接口的区别
- 接口和抽象类的区别
- 抽象类和接口的区别
- 抽象类和接口的区别
- 接口和抽象类的区别
- 抽象类和接口的区别
- 抽象类和接口的区别(转帖)
- java1
- ubuntu16.04+CUDA8.0+cuDNN5.1+opencv2.4.13+Anaconda的caffe编译过程
- java.lang.ArithmeticException
- android 修改底层wifi 文件信息
- angular指令监听ng-repeat渲染完成
- 接口和抽象类的区别
- ueditor中关闭‘保存文件’的解决方法
- JPEG2000开源库
- HDU1170 格式题
- 【洛谷 P2587】[ZJOI2008]泡泡堂
- 最优二叉树——哈夫曼树
- P2356 弹珠游戏
- 图标插件相关
- 全面升级Android面试之Broadcast receiver面试题集