java – Implements vs extends:何时使用?有什么不同?

请用易于理解的语言或某篇文章的链接进行解释.
最佳答案
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

我建议你对面向对象编程中的动态绑定,多态和一般继承做更多的研究

转载注明原文:java – Implements vs extends:何时使用?有什么不同? - 代码日志