在java程序中 一个类实现接口类时用的关键词。Object implements Object 如java 中定义的接口Animal ,实现接口的类 定义如下: public class Tiger implements Animal。
简介在java程序中 一个类实现接口类时用的关键词。Object implements Object 如java 中定义的接口Animal ,实现接口的类 定义如下: public class Tiger implements Animal
{
}
java 中的接口定义基本上就像C++中的类,类中包含的虚函数也就是C++中的抽象类。java中没有多继承,为了弥补这里的不足,用到了 interface 。
extends与implements的区别Extends可以理解为全盘继承了父类的功能。implements可以理解为为这个类附加一些额外的功能;interface定义一些方法,并没有实现,需要implements来实现才可用。extend可以继承一个接口,但仍是一个接口,也需要implements之后才可用。对于class而言,Extends用于(单)继承一个类(class),而implements用于实现一个接口(interface)。
在类的声明中,通过关键字extends来创建一个类的子类。一个类通过关键字implements声明自己使用一个或者多个接口。extends 是继承某个类, 继承之后可以使用父类的方法, 也可以重写父类的方法;implements 是实现多个接口, 接口的方法一般为空的, 必须重写才能使用1。
extends是继承父类,只要那个类不是声明为final或者那个类定义为abstract的就能继承,JAVA中不支持多重继承,但是可以用接口 来实现,这样就要用到implements,继承只能继承一个类,但implements可以实现多个接口,用逗号分开就行了;比如class A extends B implements C,D,E。
implements一般是实现接口。extends 是继承类。接口一般是只有方法声明没有定义的,那么java特别指出实现接口是有道理的,因为继承就有感觉是父类已经实现了方法,而接口恰恰是没有实现自己的方法,仅仅有声明,也就是一个方法头没有方法体。因此你可以理解成接口是子类实现其方法声明而不是继承其方法。但是一般类的方法可以有方法体,那么叫继承比较合理。引入包可以使用里面非接口的一切实现的类。那么是不是实现接口,这个你自己决定,如果想用到那么你不是实现,是不能调用这个接口的,因为接口就是个规范,是个没方法体的方法声明集合。
本词条内容贡献者为:
闫晓东 - 副教授 - 中央民族大学信息工程学院