接口没有构造函数,那怎么可以继承呢?

时间:2013-02-05 14:21:53

标签: java inheritance constructor interface

我知道子类构造函数使用super();调用超类构造函数。 但由于接口没有任何构造函数,如何进行继承?

5 个答案:

答案 0 :(得分:4)

  

但是由于接口没有任何构造函数,如何进行继承?

简单,界面不能包含任何实例字段,因此无需构建任何内容。您不能将代码置于接口中(最终还是Java 7),因此不需要调用任何内容。

答案 1 :(得分:2)

接口不是继承的 - 而是实现了

答案 2 :(得分:1)

接口是一个契约,定义了实现提供的方法。类不继承接口但实现它。

来自the specification

  

此类型没有实现,但其他不相关的类可以   通过为其抽象方法提供实现来实现它。

答案 3 :(得分:1)

实现接口(也称为服务合同),而不是构造。它们定义了一个类提供的一组方法(服务),因此无论实现接口的实际类型如何,客户端都知道他对实现类的期望。构造函数与给定类型的特定实例相关,实现接口。

IYourObject yourObject = new YourObject();

另一方面,接口继承也是扩展。它将接口的方法“添加”到另一个接口的方法,并允许在“层次结构”中的不同接口之间切换对象的接口类型。

答案 4 :(得分:0)

由于以下原因,接口不包含构造函数:

  • 界面的数据成员已初始化。
  • 不允许定义的特殊定义方法的构造函数以及接口数据成员是静态的。