黑马程序员技术交流社区
标题:
抽象类和接口的区别
[打印本页]
作者:
小小迪
时间:
2015-3-19 11:29
标题:
抽象类和接口的区别
刚开始学的时候,为了便于理解,解释接口为一种特殊的抽象类,那么两者到底有什么区别呢?
作者:
理当如此
时间:
2015-3-19 11:59
接口类与抽象类的异同点
相同点:都是不断向上抽取而来的
不同点:1.抽象类需要被继承,只能单继承(也就是子类只能有一个父类)。接口需要被实现,而且可以多实现。
2.抽象类可以定义抽象方法和非抽象方法,子类继承后,可以直接使用非抽象方法。接口中只能定义抽象方 法,必须由子类去实现。
3.抽象类的继承,是is a关系,在定义该体系的基本共性内容。接口的实现是like a关系。
作者:
李章敏
时间:
2015-3-19 16:10
补充一条:
4. 抽象类的成员修饰符可以自定义。接口中的成员修饰符是固定的,都是public的。
作者:
田晓莉
时间:
2015-3-19 16:59
理当如此 发表于 2015-3-19 11:59
接口类与抽象类的异同点
相同点:都是不断向上抽取而来的
不同点:1.抽象类需要被继承,只能单继承(也就是 ...
好详细,学习······
作者:
田晓莉
时间:
2015-3-19 17:05
所以是,接口的使用弥补了Java的单继承现象,一个类在继承另一个父类的同时可以实现多个接口,例如 class A extends class B imlplements interface C interface D是可以的
作者:
有丶时候
时间:
2015-3-19 20:21
我是来看回复,学习的。
作者:
Jaybor
时间:
2015-3-19 21:33
接口中全部都是抽象方法,实现类必须全部重写它们;而抽象类中既有抽象方法,也有普通方法,子类只需要重写抽象方法即可;
应用:GUI中有很多Adapter类,它们都是实现了某个Listener的抽象类,但是里面的方法全都是普通方法,构件添加监视器的时候只需要调用自己需要的方法;
作者:
邓士林
时间:
2015-3-19 21:38
接口有人说是一种标准,但是不管怎么说,用在对的地方就行。上面对于二者的特点回答已经清楚了。接口可用于提炼方法。
作者:
山里孩子
时间:
2015-3-20 06:49
简单点说吧:
抽象类中可以有抽象方法和普通方法.
而接口中全部都是抽象方法.
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2