Java基础(十四) 多态

1、多态的含义

   多态就是指父类的某个方法被子类重写时,可以各自产生自己的功能行为。(同一个行为具有多个不同表现形式或形态的能力)

同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。就是父类引用可以持有子类对象。即编译时看父类,运行时看子类。

//这就是多态
父类A a = new 父类的子类B();
a.方法();

2、对象的转型(C++类型兼容规则)

子类的对象可以当作基类的对象来使用称作向上转型(upcasting),反之称为向下转型(downcasting);

派生类的对象可以赋值给基类对象,在替代之后,派生类对象就可以作为基类的对象使用,但是只能使用从基类继承的成员

 

3、多态的实现方式

  • 接口多态性。
  • 继承多态性。
  • 通过抽象类实现的多态性。

 

4、多态的使用要点

  1. 多态是方法的多态,属性没有多态性。

  2. 编写程序时,如果想调用运行时类型的方法,只能进行类型转换。不然通不过编译器的检查。但是如果两个没有关联的类进行强制转换,会报:ClassCastException。 比如:本来是狗,我把它转成猫。就会报这个异常。

  3. 多态的存在要有3个必要条件:要有继承,要有方法重写,父类引用指向子类对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值