多态

----概念:
所谓多态,实际上就是一个对象的多种状态。


----体现:
父类或者接口的引用指向或者接收自己的子类对象。


----作用:
多态的存在提高了程序的拓展性和后期可维护性。


----前提:
1:需要存在继承或者实现关系。
2:要有覆盖操作。(即方法重写)


----转型:
在多态中:向下转型必须要先向上转型。
eg:
Fruit f = new Apple();//向上转型 Fruit水果
Orange o = (Orange)f;//向下转型必须先要向上转型 Orange橘子(所以此条语句为错误)
p.eat(f);
p.eat(o);//错误

----instanceof关键字:
作用:判断这个对象是否是这个特定类或者它子类的一个实例。(返回boolean值)
判断原则:判断左边的对象是否是它右边的实例。(也就是说左边的是被判断者,右边的是判断者)
eg:
System.out.println(dog instanceof Animal); //返回true。


注:
1:
成员方法:
在编译时:要查看这个父类中是否有这个被调用的子类。
在运行是:要查看这个子类中是否有这个被调用的方法。
成员变量:
要查看引用变量是否属于所调用的类。


2:
①:类的设计主要是父类的设计。
②:子类永远不要去继承一个已经完全实现好了的类,因为一旦发生向上转型,所调用的方法一定是被
子类覆盖过的方法,所以只会继承抽象类或者是接口。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值