JAVA多态及向上转型和向下转型

本文介绍了Java中的多态性概念,包括向上转型和向下转型。多态性允许将子类对象作为父类对象处理,隐藏不同子类之间的差异,实现通用代码。向上转型时,父类引用只能访问子类继承的父类属性和方法。而向下转型则用于恢复子类对象调用其独有的方法。多态性的前提是继承和方法的重写。
摘要由CSDN通过智能技术生成

        多态指的是同一个实体同时具有多种形式即同一个对象在不同时刻代表的对象不一样,指的是对象的多种形态。

        即将不同的子类对象统一当做父类对象看待,进而屏蔽不同子类对象之间的差异,写出通用的代码,做出通用的编程,统一的调用标准。

        Java中当一个子类被创建的时候,首先会在内存中创建一个父类对象,然后再父类对象外部放上子类独有的属性,两者结合形成子类对象,子类可以继承父类中所有的属性和方法,同时子类可以对继承的方法进行重写,新建自己独有的方法。

        多态的前提是继承和方法的重写

       

1、向上转型

        用父类的引用变量去引用子类。父类的引用变量可以访问子类中属于父类的属性和方法(需要遵守访问权限),但是不能访问子类独有的属性和方法(即重写过后的方法)。因为在编译阶段,可以调用的成员是由编译类型决定的,最终的运行结果要看子类的具体实现。

2、向下转型

只有当对象是通过子类对象上上转型得到的时候才能向下转型

子类的引用指向子类的对象,过程必须采取强制转型。

之前向上转型过的子类对象仍想调用子类独有的方法时,需要重新恢复成子类对象,所以就会用到向下转型。

语法:子类类型  引用名 = (子类类型) 父类引用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值