java 向上转型 向下转型

//父类 四边形

class Quadrangle{
public static void draw (Quadrangle q){
}
//子类 
public class Parallelogram extends Quadrangle{
public static void main(String args[]){
Parallelogram  p=new Parallelogram ();
//这就是向上转型
draw(p)
}
}
//子类
public class Parallelogram1 extends Quadrangle{
public static void main(String args[]){
Quadrangle q =new Quadrangle();
//向下转型需要判断类型
if(q instanceof Parallelogram1){
//向下转型
Parallelogram1 p =(Parallelogram1) q;
}
}
}
1.所谓的向上转型就是创建一个子类对象  然后用父类接受,转化为父类的类型。如平行四边形向上转为四边形。在java中可以将一个类向上转型为父类对象,也可以向上转型为抽象类对象,或者向上转型为该类实现接口。
2.向下转型,就是将父类类型强制转换为子类类型对象,如四边形向下转为平行四边型,并不是所有的四边型都是平行四边形的,所以向下转型时需要进行对象类型判断 然后再向下转型。

转载于:https://www.cnblogs.com/cyz110/p/6226576.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值