实施与扩展:何时使用?有什么不同?

请用一种易于理解的语言或一些文章的链接进行解释。

回答:

extends用于扩展课程。

implements用于实现接口

接口和常规类之间的区别在于,在接口中不能实现任何已声明的方法。只有“实现”接口的类才能实现方法。接口的C ++等效项将是一个抽象类(不完全相同,但差不多)。

同样,java不支持类的多重继承。这可以通过使用多个接口来解决。

 public interface ExampleInterface {

public void doAction();

public String doThis(int number);

}

public class sub implements ExampleInterface {

public void doAction() {

//specify what must happen

}

public String doThis(int number) {

//specfiy what must happen

}

}

现在延伸一堂课

 public class SuperClass {

public int getNb() {

//specify what must happen

return 1;

}

public int getNb2() {

//specify what must happen

return 2;

}

}

public class SubClass extends SuperClass {

//you can override the implementation

@Override

public int getNb2() {

return 3;

}

}

在这种情况下

  Subclass s = new SubClass();

s.getNb(); //returns 1

s.getNb2(); //returns 3

SuperClass sup = new SuperClass();

sup.getNb(); //returns 1

sup.getNb2(); //returns 2

另外,请注意,@Override实现接口不需要标记,因为原始接口方法中没有任何内容可以覆盖

我建议您对面向对象程序设计中的动态绑定,多态性和一般继承性进行更多研究

以上是 实施与扩展:何时使用?有什么不同? 的全部内容, 来源链接: utcz.com/qa/402137.html

回到顶部