java中何时用extends什么时候用implements

来源:百度知道 编辑:UC知道 时间:2024/06/22 01:50:09
我看API中几乎所有的类都是继承的,又几乎所有的都也有继承接口
public class RandomAccessFileextends Objectimplements DataOutput, DataInput, Closeable
比方说这个.

可是写程序的时候,导入了一般就不用再写这个了吧?可是比方说监听,就一定要implements ActionListener,这究竟应该怎么理解,怎么用

类可以 extends类 叫做:“继承”(单继承)
接口可以extends接口 叫做:“扩展”
类可以implements 接口, 接口,... 叫做:“实现”

java是单继承多实现
子类 extends 父类 implements 接口, 接口, ...{
}

接口可以extends接口 叫做:“扩展”
类可以implements 接口, 接口,... 叫做:“实现”

这个要看实际的意义的,其实java中如果有继承关系,就用extends,没有继承关系的用implements。
很多时候两种都能实现相同的功能,更多的是看逻辑!

extend是类与类之间的关系,如果两个类A,B,你希望比具有A的全部特征,你可以让B继承(extends)A,同时也可以扩展自己的一功能

implements是类与接口之间的关系。接口定义了一系列的方法。
比如你有一个接口MP3,然后又两个类sony,ipod,这两个类都实现了mp3接口进而都具有mp3接口所定义的播放,停止,音量调节等功能。

类与类继承用extends
类继承接口用implements

举个不太恰当的比方:你和你爸爸妈妈的长相之间是EXTENDS。你是子类,你爸爸妈妈是父类
你和你爸爸妈妈都要吃饭、看书、睡觉,这些动作你、你爸爸妈妈都implements接口,接口里声明了吃饭、看书、睡觉这些方法。

并且,extends不支持多重继承,implements支持多重。