A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ellisontu 中级黑马   /  2015-3-27 20:55  /  1251 人查看  /  12 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Java提供和支持创建抽象类和接口。它们的实现有共同点,不同点在于:

  • 接口中所有的方法隐含的都是抽象的。而抽象类则可以同时包含抽象和非抽象的方法。
  • 类可以实现很多个接口,但是只能继承一个抽象类
  • 类如果要实现一个接口,它必须要实现接口声明的所有方法。但是,类可以不实现抽象类声明的所有方法,当然,在这种情况下,类也必须得声明成是抽象的。
  • 抽象类可以在不提供接口方法实现的情况下实现接口。
  • Java接口中声明的变量默认都是final的。抽象类可以包含非final的变量。
  • Java接口中的成员函数默认是public的。抽象类的成员函数可以是private,protected或者是public。
  • 接口是绝对抽象的,不可以被实例化。抽象类也不可以被实例化,但是,如果它包含main方法的话是可以被调用的。

12 个回复

正序浏览
楼主总结的挺好的
回复 使用道具 举报
基本功能定义在抽象类中,扩展功能定义在接口中!
回复 使用道具 举报
楼主自问自答啊,总结的不错
回复 使用道具 举报
接口和抽象类主要是看怎么用,抽象类中的功能是这个体系的基本功能,把他提取出来是为了提高代码的复用性。而接口中的功能不属于这个体系中,他是用来功能扩展的,比如公务员有其自身的基本功能,但是他还在外面开了一家公司,开公司不在公务员功能体系中,这是就要定义接口。
回复 使用道具 举报
不错!不错!
回复 使用道具 举报
DxxD 中级黑马 2015-3-28 10:10:57
8#
:)。。。。这个问题管理员居然也让发。。。
回复 使用道具 举报
写的差不多了
回复 使用道具 举报
主要看什么时候用接口或抽象类,接口是功能的扩展,实现它的子类只是使用它的方法,而抽象类里的抽象方法子类需全部重写,子类的是它的一份子,主要还是看怎么应用
回复 使用道具 举报
我得多跟楼主学习学习,我都不会总结
回复 使用道具 举报
总结蛮好的,楼主也是蛮拼的啊!!!!力挺楼主!!!!
回复 使用道具 举报
总结的挺好~~刚学完。
回复 使用道具 举报
接口里面的类全是抽象的,而抽象类里面可以有非抽象类
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马