1 Java 类

Java 中的类与 C++ 中的很像,同样拥有字段、方法、构造函数等。但是由于 Java 中没有指针的概念,所以 this 在 Java 的类中以引用的形式存在,调用也只能通过 this.${field_name} 访问字段,或者 this.${method_name} 访问方法。

2 Java 的继承

2.1 继承的语法

Java 中的继承是通过 extends 关键字实现的。

  1. class Student extends Person {
  2. }

如果没有 extends 子句,则该类默认为 java.lang.Object 的子类。 所有的类都是通过直接或间接地继承 java.lang.Object 得到的

继承关系通常在 UML 图中,使用一个箭头来表示子类和父类的关系

  1. class Student extends Person {
  2. String school;
  3. int score;
  4. boolean isGood() { return score > 80;}
  5. }

image.png
一般如果子类的方法覆盖了父类 ( override ) 的方法,要在注释中声明 @Override .

2.2 super 的使用

在 Java 中,可以使用 this 访问父类的字段和方法,但如果使用 super 来访问,可以增加程序的可读性。同时更重要的是,如果子类对父类的字段或方法实现了覆盖,则可以通过 super 访问父类中原有的字段或方法。
由于构造方法是不能覆盖的,所以在子类的构造方法中,需要通过 super 调用父类的构造方法