请用通俗易懂的语言或文章的链接进行解释。
extends是为了 扩展 一个类。
extends
implements用于 实现 接口
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实现接口不需要标签,因为原始接口方法中没有任何内容 可以被覆盖
@Override
我建议您对面向对象编程中的动态绑定、多态性和一般继承进行* 更多研究 *