A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

头都大了,向上和向下有什么区别呢 应用场景是什么

1 个回复

正序浏览
class person{
}
class student extends person{
}

看到这个关系student继承person,person p1=new student();  父类的引用指向子类的对象实例的时候就是向上转型;   这个时候p1就可以调用子类的方法或成员,   当变回来时候就是向下转型
student stu1=(student)p1;   应用场景的话学过迭代器么  ArrayList al=new ArrayList();
Iteretor iteretor=al.Iteretor();  这个就是想上转型,al调用Iteretor方法返回一个继承Iteretor接口的子类对象
Iteretor引用指向子类对象引用,
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马