多态

(子类的本身类型)

Son son = new Son();

一、存在条件

1、子类重写父类方法(快捷键:Ctrl + O)
2、父类引用指向子类的对象

Father father = new Son();

二、作用

父类引用子类的对象会调用子类重写的方法

举例

1、父类:有一个run方法

package com.Oop.demo01;

public class Person {
    public void run(){
        System.out.println("run");
    }
}

2、子类:重写父类的run方法

package com.Oop.demo01;

public class Student extends Person{
    @Override  //有功能的注解,表示方法重写
    public void run() {
        System.out.println("son");
    }
}

主程序

package com.Oop.demo01;

public class Application {
    public static void main(String[] args) {


        Student s1 = new Student();//子类的本身类型
        Person  s2 = new Student();//父类的引用指向子类对象
        s2.run();//子类重写父类方法,执行子类的方法
        s1.run();
    }
}

最后输出结果,均输出的子类重写的run方法

posted @ 2022-07-31 10:01  随风飘向天边  阅读(33)  评论(0)    收藏  举报