原文链接:https://www.cnblogs.com/Time25/p/19866466.html

1

子类必须覆写父类的抽象方法,并且等级不可以比父类的抽象方法低,比如父类的抽象方法是public,子类覆写的就不可以是默认
image
图中报错就是因为子类覆写的方法是默认,但是父类的是public

具体代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// abstract class
public class Main {
public static void main(String[] args) {
Person p = new Student();
p.run();
}
}

abstract class Person {
public abstract void run();
}

class Student extends Person {
@Override
public void run() {
System.out.println("Student.run");
}
}

面向抽象编程

其实就是定义了一个抽象类是person,及其子类student teacher,在调用person类中的抽象方法run的时候
尽量这样

1
2
3
4
5
6
Person s = new Student();
Person t = new Teacher();
// 不关心Person变量的具体子类型:
s.run();
t.run();

// TRAINING LOG · 第 50 / 76 篇训练记录 · 成文于 2026.04.14 · 下午 16:45