为了账号安全,请及时绑定邮箱和手机立即绑定

为什么要提升类型

com为demo5的父类

demo5 asd=new demo5();  //获得子类对象引用

com aaa=asd;  //类型提升

我看有的写法是这样的:com aaa=new demo5();

我这样写也可以实现一样的效果啊:demo5 zzz=new demo5();

com aaa=new demo5();是把他的类型提升了,这样写有什么用

正在回答

2 回答

package com.hwadee.test;


public class Factory {

    

    public void eat(Fruit fruit) {

        if (fruit == null) {

            

            System.out.println("没有原材料!!!");

        }

        else {

            

            if (fruit instanceof Apple) {

                

                Apple apple = (Apple) fruit;

                apple.eat();

            }

            if (fruit instanceof Orange) {

                

                Orange orange = (Orange) fruit;

                orange.eat();

            }

        }

    }

}


0 回复 有任何疑惑可以回复我~
#1

久点 提问者

没看懂
2017-05-16 回复 有任何疑惑可以回复我~

提升类型的主要应用是他可以接收它所有子类的对象,比如我们在测试类中定义一个方法需要一个类的所用子类都进行相同的操作,如果不提升类型我们就需要不断地重载方法,通过父类对象可以很好地解决这个问题。

0 回复 有任何疑惑可以回复我~
#1

久点 提问者

能写一个简单的例子吗?谢谢了
2017-05-14 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么要提升类型

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信