美文网首页JavaSE
12.对象的转型

12.对象的转型

作者: null_meng | 来源:发表于2019-02-23 09:57 被阅读0次

1.向上转型

2.向下转型

什么是向上转型?

向上转型------将子类的对象赋值给父类的引用

Student s = new Student();

Person p = s;

堆内存中一个对象,栈内存中两个引用

一个引用能够调用哪些成员(变量和函数),取决于这个引用的类型

为什么使用向上转型?

减少重复代码

当一个父类下的许多子类都需要一个方法时,只需要在父类中写这个方法,然后在主程序中用向上转型调用父类的这个方法,通过新建子类的对象找到对应的子类。达到所有的子类都可以使用这个方法的目的,而不需要在所有的子类中编写这个方法,减少了重复代码的出现

什么是向下转型?

向下转型------将父类的对象赋给子类的引用

Student s1 = new Student();

Person p = s1;

Student s2 = (Student)p;

堆内存中一个对象,栈内存中三个引用

在进行向下转型时一定要强制转换保证向下转型的准确性,开发中一定要慎用向下转型

为什么使用向下转型?

开发应用时经常需要子类进行向上转型,在向上转型时往往会丢失子类一部分东西,这时我们使用向下转型时,可以把子类丢失的那部分东西拿回来

相关文章

  • 12.对象的转型

    1.向上转型 2.向下转型 什么是向上转型? 向上转型------将子类的对象赋值给父类的引用 Student s...

  • JavaSE之多态

    转型:向上转型(上溯造型)、向下转型(下溯造型) 向上转型:父类引用指向子类对象。 父类的引用 = 子类的对象(也...

  • RN-数组里面的对象去重

    /** Created by chj on 2018/6/12.*/ /** arr:对象数组 根据对象的某一个 ...

  • 2018-05-04 Java向上转型和向下转型

    Java中,对象类型转换分为向上转型和向下转型两种 1. 向上转型 子类对象到父类对象的类型转换,通常由系统自动完...

  • 对象转型

    分享以下一段代码 程序运行的结果是“#######”,但是a.Bprint()这里会出错,是不是就可以理解为向上转...

  • Java一阶段常用知识点

    1.上转型对象:父类声明,子类实例化的对象称为上转型对象。 使用规则: 上转对象不能操作子类新增的成员变量,失掉...

  • Java学习笔记 (一)

    多态性 方法的重载与覆写 对象的多态性①.向上转型:子类对象→父类对象 (自动完成)②.向下转型:父类对象→子类对...

  • 4.5dynamic_cast操作符

    向上转型:指用派生类指针指向基类对象 向下转型:指将基类指针指向派生类对象 向下转型不会有任何问题,而向上转型默认...

  • 12.面向对象

    Student can eatStudent can study APPLE Python can do ever...

  • 对象的转型(向上转型和向下转型)

    转型是面向对象多态性的体现。 向上转型——将子类的对象赋值给父类的引用。 Student s=new Studen...

网友评论

    本文标题:12.对象的转型

    本文链接:https://www.haomeiwen.com/subject/phuuyqtx.html