Java 继承
Java 继承 (子类和超类)
在 Java 中,可以将属性和方法从一个类继承到另一个类。我们将 "继承概念" 分为两类:
- 子类(子类)- 从另一个类继承的类
- 超类(父类)- 从父类继承的类
要从类继承,请使用 extends
关键字。在下面的实例中,Car类
(子类)继承了 Vehicle
类(超类)的属性和方法:
实例
class Vehicle {
protected String brand = "Ford";
public void honk() {
System.out.println("Tuut, tuut!");
}
}
class Car extends Vehicle {
private String modelName = "Mustang";
public static void main(String[] args) {
Car myFastCar = new Car();
myFastCar.honk();
System.out.println(myFastCar.brand + " " + myFastCar.modelName);
}
}
你注意到 Vehicle 的
protected
修饰符了吗?我们将 Vehicle 中的 brand 属性设置为 protected
访问修饰符。如果设置为 private
,Car 类将无法访问它。为什么以及何时使用 "继承"?
- 它对代码的可重用性很有用:在创建新类时重用现有类的属性和方法。
提示:还要看下一章,多态性,它使用继承的方法来执行不同的任务。
final 关键字
如果不希望其他类从类继承,请使用 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)
class Main extends Vehicle {
^
1 error)