Java中接口和抽象类的区别及使用的场合
2016-04-15 15:27
288 查看
区别:
1.抽象类中可以有方法实现;但接口中只能有方法声明。
2.抽象类是重构的结果;接口是设计的结果。
3.Java不支持多继承,所以继承抽象类只能继承一个,但可以实现多个接口。
关于使用场合:
1.接口是核心,其定义了要做的事情,包含许多方法,但没有具体实现方法。
2.若类实现了接口,则要实现接口中的每个方法。
3.若某些类的实现有共通之处,则可以抽象出一个抽象类,由抽象类实现接口的共通代码,而个性化的方法则由各个子类去实现。
可见,抽象类是为了简化接口的实现,不仅实现了公共方法,让你可以快速开发,又允许你的类完全可以自己实现所有的方法,不会出现紧耦合的问题,使应用场合更简单了。
所以使用时:
1.优先定义接口。
2.若有多个接口实现有公用部分,则使用抽象类,然后进行集成。
转自:http://blog.sina.com.cn/s/blog_7f2375d90100xn6f.html
1.抽象类中可以有方法实现;但接口中只能有方法声明。
2.抽象类是重构的结果;接口是设计的结果。
3.Java不支持多继承,所以继承抽象类只能继承一个,但可以实现多个接口。
关于使用场合:
1.接口是核心,其定义了要做的事情,包含许多方法,但没有具体实现方法。
2.若类实现了接口,则要实现接口中的每个方法。
3.若某些类的实现有共通之处,则可以抽象出一个抽象类,由抽象类实现接口的共通代码,而个性化的方法则由各个子类去实现。
可见,抽象类是为了简化接口的实现,不仅实现了公共方法,让你可以快速开发,又允许你的类完全可以自己实现所有的方法,不会出现紧耦合的问题,使应用场合更简单了。
所以使用时:
1.优先定义接口。
2.若有多个接口实现有公用部分,则使用抽象类,然后进行集成。
转自:http://blog.sina.com.cn/s/blog_7f2375d90100xn6f.html
相关文章推荐
- java thrift返回List<String>异常
- 安装JDK
- 共同学习Java源码--常用数据类型--String(十五)
- Struts2图片的上传下载
- Spring Boot使用自定义的properties
- java list排序
- Spring @PropertySource example
- 浅谈Java回调机制的简单理解
- Java基础之理解Annotation(自定义注解)
- JavaCard free memory detect (how much memory left)
- spring-工具类
- spring+jpa 两个数据源配置
- Eclipse插件Fat Jar的安装及使用
- java--集合的迭代器
- Java图形界面实战如何用键盘控制小球的移动以及接口的讲解
- Java异常捕获之try-catch-finally-return的执行顺序-转载
- java 关于初学面向对象的问题四:抽象类
- Java中有关Null的9件事
- JAVA Static关键字理解
- java反射详解