多态和转型

多态

就是多种事物的表现形式,或者说是一种事物的多种形态

也是一种功能的多种实现方法

多态的最终表现形式:

多态就是父类引用子类对象

实现多态的前提:

要有继承关系或者要有接口的实现

多态调用成员变量

只运行父类,或者说左边指定的引用类型
多态调用成员方法

如果子类有重写,name就运行子类的重写,如果没有,那就找父类

编译看父类,运行看子类

如果没有方法的重写,那么多态也就没有意义

Person p = new Person();

        Student s = new Student();

        //正常调用 : p或者s调用的成员 : 1)自己类中存在的成员  2)从父类中继承的成员

//多态

Person  ps=  new Teacher();

//多态的调用

System.out.println(ps.str);

 ps.test();

转型

基本:数据类型转换

自动类型的提升:  小---->大  如:long l=i;

强制类型的转换:就是从大到小  如:int

小范围类型 变量=(小范围类型)大范围类型;

引用:转型

小:子类   大:父类

向上转型:子类转父类,从小转到大,也是自动类型的提升

向下转型:父类转子类,从大到小,也是强制类型装换

子类类型 变量=(子类类型)父类引用;

需求:就是当多态不能调用子类类型的时候,可以向下转型,从而使用子类中独有的 变量

java.lang.ClassCastException类型转换异常

        在使用向下转型的时候,如果转成其他的子类类型,就会遇到这个异常

Instansof 运算符

引用instanceof类型:判断前面的引用是否指向后面类型的对象或者后面类型的子类对象,如果结果是则返回true,如果不是则返回fales

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值