多态应用

来源:互联网 发布:免费英语网络课程 编辑:程序博客网 时间:2024/05/26 02:51
package ZuoYe;public class Car {    public String color;    public String name;    public String getColor() {        return color;    }    public void setColor(String color) {        this.color = color;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    @Override    public String toString() {        return "Car{" +                "color='" + color + '\'' +                ", name='" + name + '\'' +                '}';    }    public void run(){        System.out.println("可以快速行驶");    }}
package ZuoYe;public class BenChi extends Car {    public void ting(){        System.out.println("可以听歌,打游戏");    }
}
package ZuoYe;public class BaoMa extends Car {    public void tedian(){        System.out.println("可以变形");    }}

package ZuoYe;public class Test {    public static void main(String[] args) {        Car car =  new BaoMa();        car.color="银色";        car.name="宝马";        System.out.println(car.toString());        if(car instanceof BaoMa){            ((BaoMa) car).tedian();        }        Car car1 = new BenChi();        car1.color="黄色";        car1.name="奔驰";        System.out.println(car1.toString());        if(car1 instanceof BenChi){            ((BenChi) car1).ting();        }    }}

多态:对象的多种形态,父类引用指向子类对象
引用变量的强制类型转换