努力学习往Java程序员迈进
笔记——静态初始化块的顺序
子类通过重写父类的方法,可以用自身的行为替换父类的行为。方法的重写是实现多态的必要条件。
方法的重写需要符合下面的三个要点:
- “ == ” : 方法名、形参列表相同
- “ ≤ ” : 返回值类型和声明异常类型,子类小于等于父类
- “ ≥ ” : 访问权限,子类大于等于父类
public class TestOverride{
public static void main(String[] args){
Vehicle v1 = new Vehicle();
Vehicle v2 = new Horse();
Vehicle v3 = new Plane();
v1.run();
v2.run();
v3.run();
v2.stop();
v3.stop();
}
}
class Vehicle{
public void run(){
System.out.println("跑...");
}
public void stop(){
System.out.println("停止不动");
}
}
class Horse extends Vehicle{
public void run(){
System.out.println("冲鸭,嘚嘚嘚");
}
}
class Plane extends Vehicle{
public void run(){
System.out.println("天上飞!");
}
public void stop(){
System.out.println("空中不能停,坠毁了!");
}
}
输出结果:
跑...
冲鸭,嘚嘚嘚
天上飞
停止不动
空中不能停,坠毁了!