为什么要提升类型

来源:10-3 Java 中的抽象类

久点

2017-05-13 11:51

com为demo5的父类

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

com aaa=asd;  //类型提升

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

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

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

写回答 关注

2回答

  • 慕婉清0689395
    2017-05-14 16:11:56

    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();

                }

            }

        }

    }


    久点

    没看懂

    2017-05-16 20:06:56

    共 1 条回复 >

  • 慕婉清0689395
    2017-05-13 13:18:12

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

    久点

    能写一个简单的例子吗?谢谢了

    2017-05-14 15:45:05

    共 1 条回复 >

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530952 学习 · 6091 问题

查看课程

相似问题