目录

JAVA 继承


Java继承(子类和超类)

在 Java 中,可以将属性和方法从一个类继承到另一个类。我们将 "inheritance concept" 分为两类:

  • 子类(child) - 从另一个类继承的类
  • 超类(parent) - 继承自的类

要从类继承,请使用extends关键字。

在下面的示例中,Car类(子类)继承了类(子类)的属性和方法Vehicle类(超类):

示例

class Vehicle {
  protected String brand = "Ford";        // Vehicle attribute
  public void honk() {                    // Vehicle method
    System.out.println("Tuut, tuut!");
  }
}

class Car extends Vehicle {
  private String modelName = "Mustang";    // Car attribute
  public static void main(String[] args) {

    // Create a myCar object
    Car myCar = new Car();

    // Call the honk() method (from the Vehicle class) on the myCar object
    myCar.honk();

    // Display the value of the brand attribute (from the Vehicle class) and the value of the modelName from the Car class
    System.out.println(myCar.brand + " " + myCar.modelName);
  }
}

亲自试一试 »

你注意到了吗protected车辆中的修饰符?

我们设置品牌属性在车辆到一个protected访问修饰符。如果设置为private,Car 类将无法访问它。

为什么以及何时使用"Inheritance"?

- 它对于代码可重用性很有用:创建新类时重用现有类的属性和方法。

提示:还请看下一章,多态性,它使用继承的方法来执行不同的任务。



最终关键字

如果您不希望其他类继承某个类,请使用final关键字:

如果您尝试访问final类,Java会产生错误:

final class Vehicle {
  ...
}

class Car extends Vehicle {
  ...
}

输出将是这样的:

Main.java:9: error: cannot inherit from final Vehicle
class Main extends Vehicle {
                  ^
1 error)
亲自试一试 »