• 技术文章 >java >java基础

    java向上转型发生的时机

    小妮浅浅小妮浅浅2021-08-05 11:28:37原创3941

    1、直接赋值

    1

    2

    3

    4

    public static void main(String[] args) {

            //父类引用 引用了 子类引用所引用的对象

            Animal animal = new Cat();;//向上转型

    }

    2、方法传参,把一个Cat的子类传给一个Animal类型的父类,这里也是能发生向上转型的。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    public class Test extends TestDemo {

      

        public static void func(Animal animal) {

             

        }

        public static void main(String[] args) {

            //父类引用 引用了 子类引用所引用的对象

            Cat cat = new Cat();

            func(cat);

        }

    }

    3、方法返回,func方法的返回类型是Animal,但返回的确是一个Cat类型,这里也是发生了向上转型。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    public class Test extends TestDemo {

        public static Animal func() {

            Cat cat = new Cat();

            return cat;

        }

        public static void main(String[] args) {

            Animal animal = func();

        }

    }

    以上就是 java向上转型发生的时机,希望对大家有所帮助。更多Java学习指路:Java基础

    本教程操作环境:windows7系统、java10版,DELL G3电脑。

    专题推荐:java向上转型
    上一篇:java多态的向上转型是什么 下一篇:java向下转型是什么意思

    相关文章推荐

    • java数组引用如何实现• java中Stream的使用流程及注意• java中Stream的四种创建• java中反射提供哪些功能• java获取class实例的方式• java反射调用指定的属性• java中BigDecimal有哪些用法• java中BigDecimal的数学运算• BigDecimal值在java比较的两种方法• java SimpleDateFormat如何转换局部变量• java RMI的工作过程• java反射机制提供哪些功能• java获取class实例的4种方式• java class实例代表哪些结构• java类加载的过程• java反射如何调用指定的属性

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网