java-多态

目录

1.什么是多态?

2.特点

3.向上转型和向下转型

4.instanceof运算符

5.equals方法


1.什么是多态?

多态首先是建立在继承的基础上的,先有继承才能有多态。多态是指不同的子类在继承父类后分别都重写覆盖了父类的方法,即父类同一个方法,在继承的子类中表现出不同的形式。多态成立的另一个条件是在创建子类时候必须使用父类new子类的方式。

比如猫和狗都是动物,即

Animal  dog = new Dog();  //创建一只狗对象

这时多态就产生了。所谓多态: 对象具有多种形态,对象可以存在不同的形式.

2.特点

 把子类对象赋给父类变量,在运行时期会表现出具体的子类特征(调用子类的方法)。

                               Animal a = new Dog();

3.向上转型和向下转型

3-1向上转型

父类引用指向子类实例对象,转型后,可以调用父类派生给子类的方法,但不能调用子类独有的方法。(包括子类中的重写方法)

Animal a = new Dog();

3-2向下转型

又叫做强制转型,子类引用指向父类对象,需要强制类型转换,可以调用父类派生给子类的方法和子类重写的父类的方法,可以调用子类独有的方法

步骤:先进行向上转型,然后再向下转型

father two=new son();
 son two1=(son)two;

下面两种形式都不行:

father two=new father();
son two1=(son)two;
//也不能下面那样
son  two=new father();

4.instanceof运算符

它的作用是测试它左边的对象是否是它右边的类的实例,返回 boolean 的数据类型。

5.equals方法

测试两个对象是否相等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值