多态

1.创建Uncle

public class Uncle {
    private String name;
    private int age;

    public Uncle(){
    }

    public String getName(){
        return name;
    }
    public void setName(String name){
        this.name =name;
    }
    public int getAge(){
        return age;
    }

    public void setAge(int age){
        this.age = age;
    }

    @Override
    public String toString() {
        return "Uncle{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }

    public void faHongbao(){
        System.out.println("舅舅发红包");
    }
}

2.创建UncleOne

public class UncleOne extends Uncle{
    public void faHongbao(){
        System.out.println("大舅发红包");
    }
    public void songYan(){
        System.out.println("大舅喜欢送烟");
    }
}

3.创建UncleTwO

public class UncleTwo extends Uncle{
    public void faHongbao(){
        System.out.println("二舅发红包");
    }
}

4.创建运行Dome01以及上下转型

public class Dome01 {
    public static void main(String[] args) {
        UncleOne dajiu =new UncleOne();
        dajiu.faHongbao();

        //多态
        Uncle dajiu1 =new UncleOne();
        dajiu1.faHongbao();
        //子类独有的方法会无法在父类中使用
        //dajiu1.songYan(); //会报错

        UncleOne temp =(UncleOne)dajiu1;
        temp.songYan();

        Uncle erjiu = new UncleTwo();
        erjiu.faHongbao();

        //向下转型
        Uncle uncle =new Uncle();
        uncle.faHongbao();

        Uncle uncleTwo =new UncleTwo();
        UncleTwo temp = (UncleTwo) uncleTwo;
        temp.faHongbao();
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容