Java面向对象多向上转型和向下转型有什么区别

如题所述

你好,这个还是举例子说明,比较容易弄明白。
我们这里讲面向对象的转型(基本数据类型不属于面向对象,这里就不多说了)。
面向对象中的转型只会发生在有继承关系的子类和父类中(接口的实现也包括在这里)。
加入有父类:人,子类:男人和女人。
向上转型: Person p = new Man() ; //向上转型不需要强制类型转化
向下转型: Man man = (Man)new Person() ; //必须强制类型转化
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-04-08
若想操作拥有共同父类的不同(子)类们的实例,就向上转型;
若想当成指定的具体的子类的实例,就向下转型。
越向上,概念越模糊,可以代表多种不同的类的实例,
越向下,概念越具体详细,可以代表特定的类的实例。
相似回答