java向上转型和向下转型有什么用_【Java学习笔记(三)】之多态的要点介绍

本文章由公号【开发小鸽】发布!欢迎关注!!!

老规矩--妹妹镇楼:

e1dced2e5f71eb4afd8720a8df08b000.png

一. 多态的定义

  多态,从名字可以看出,是 同一个对象在不同时可表现出来的不同形态。

  如:猫是一种动物,也是一个具体的物种猫。

cat 

  猫在不同的场合可以被形容为不同的对象,既可以是猫,也可以是动物,这就是多态

二. 多态的前提

  1. 继承关系
  2. 方法重写
  3. 父类引用指向子类对象

三. 多态中成员访问特点

(一) 成员变量的访问

  无法通过多态访问父类中不存在的成员变量,只能访问父类中存在的成员变量。因为多态是父类的引用指向子类的对象,即

Animal 

  创建了子类对象Cat,多态表示为Animal,那么只有Animal父类中的成员变量才能够访问到,而子类中的特有的成员变量是无法访问到的。

(二) 成员方法的访问

  成员方法是可以重写的,那么同样是创建了子类对象Cat,多态表示为Animal。

Animal 

  通过多态可以调用子类中已经重写的成员方法,但是和成员变量一样,无法访问子类中特有的成员方法。

四. 多态中的转型

(一) 向上转型

  所谓向上,即子类转为父类,通常用的父类的引用指向子类对象就是向上转型。如:

Anima 

  创建了子类对象,并将它赋值给了父类对象,即子类转为父类。

(二) 向下转型

  所谓向下,即父类转为子类,将父类对象强转为子类对象。如:

Animal 

  父类对象a被强转为了子类对象c。

五. 多态的利弊

(一) 多态的优点

  多态能够提高程序的扩展性,当我们定义一个方法时,只需要使用父类型作为参数,使用的时候,传入具体的子类型就可以实现我们的需求。特别是对于多种相似的子类重复操作时,非常方便。

(二) 多态的缺点

  多态只能使用父类中的成员变量,无法使用子类中特有的成员变量。 多态只能使用父类和子类中重写的成员方法,无法使用子类中特有的成员方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值