Java中抽象类和接口的区别
2015-08-21 17:37
274 查看
区别一,两者表达的概念不一样。抽象类是一类事物的高度聚合,那么对于继承抽象类的子类来说,对于抽象类来说,属于“是”的关系;而接口是定义行为规范,因此对于实现接口的子类来说,相对于接口来说,是“行为需要按照接口来完成”。
区别二,抽象类在定义类型方法的时候,可以给出方法的实现部分,也可以不给出;而对于接口来说,其中所定义的方法都不能给出实现部分。
区别三,继承类对于两者所涉及方法的实现是不同的。继承类对于抽象类所定义的抽象方法,可以不用重写,也就是说,可以延用抽象类的方法;而对于接口类所定义的方法或者属性来说,在继承类中必须要给出相应的方法和属性实现。
区别四,在抽象类中,新增一个方法的话,继承类中可以不用作任何处理;而对于接口来说,则需要修改继承类,提供新定义的方法。
区别二,抽象类在定义类型方法的时候,可以给出方法的实现部分,也可以不给出;而对于接口来说,其中所定义的方法都不能给出实现部分。
区别三,继承类对于两者所涉及方法的实现是不同的。继承类对于抽象类所定义的抽象方法,可以不用重写,也就是说,可以延用抽象类的方法;而对于接口类所定义的方法或者属性来说,在继承类中必须要给出相应的方法和属性实现。
区别四,在抽象类中,新增一个方法的话,继承类中可以不用作任何处理;而对于接口来说,则需要修改继承类,提供新定义的方法。
相关文章推荐
- java小知识
- 基于注解的Spring AOP的配置和使用--转载
- JAVA项目如何命名包目录
- 欢迎使用CSDN-markdown编辑器
- spring扫描注解工具类scan
- Java反射机制(二)
- springMVC过滤器解决乱码问题
- Java 反射机制(一)
- eclipse自动补全
- Java进阶04 RTTI
- java学习之构造器内部的多态方法的行为
- Java图片验证码的实现
- spring framework各个版本下载网址
- java框架篇---spring aop两种配置方式(1)
- Java对象在HotSpot虚拟机的创建、内存分布和访问
- 自定义字符输入流的包装类,通过这个包装类对底层字符输入流进行包装,让程序通过这个包装类读取某个文本文件(例如,一个java源文件)时,能够在读取的每行前面都加上有行号和冒号。
- 一个java实现的简单的4则运算器
- 分析运行结果,说明原理。(没有分析结果不得分) import java.util.ArrayList; class Data { int
- Spring init-method and destroy-method example
- Java学习--(十一)包装类,Date,SimpleDateFormat,Calendar类的使用