Java求生之路--多态及其应用

多态

  通常是指能够呈现出多种不同的形式或者形态,而在程序设计的术语中,它意味着一个特定类型的变量可以引用不同类型的对象,并且能够自动的调用引用的对象和方法。

  方法重写是多态的基础

什么是方法重写

             当子类继承父类时,会根据需求重写父类中的相关方法,这就叫做方法重写 

方法重写需要注意的是:方法名必须相同,参数项必须相同,返回值及类型必须相同。

方法重写的规则:

  子类继承父类时重写父类的方法,访问修饰符不能小于父类

 

如果在类的前面加了final 表示不可以被重写

 也叫做动态继承

 

Java中的多态一般有两种绑定机制

动态绑定

 实例方法一般在调用时遵循的是动态绑定机制,与引用变量实际的对象绑定 调用重写后的方法

静态绑定

静态方法在调用时,遵循的是静态绑定机制,与引用变量所声明的类型绑定,实际上在编译阶段就做了绑定
(成员变量<包括静态变量和实例变量>)静态绑定机制 也与引用变量所声明的类型绑定,在编译阶段做了绑定

一般实现多态有以下两种方法:

向上转型

            把引用变量类型转换为父类

向下转型

           把引用变量类型转换为子类

注意:父类引用指向子类对象和子类对象并不完全以往,还可以调用子类重写方法,还可以调用父类本来的的方法和属性。

 

如何实现多态

编写具有继承关系的父类和子类

子类重写父类方法

父类引用指向子类对象

 

(构造方法也能重写,叫做方法重载)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值