|- 向上转型(自动完成):父类 父类对象 = 子类实例
|- 向下转型(强制完成):子类 子类对象 = (子类)父类实例;
向上转型的意义在于参数的统一上。统一的参数方便于方法的调用。
向下转型指父类调用子类自己特殊的方法,所有的父类发生了向上转型之后只能看见父类自己定义的全部方法信息,但看不见子类特殊的方法,于是此时就需要使用向下转型,将父类对象转换为子类对象,这样就可以使用子类的特殊功能了。
|- 向上转型(自动完成):父类 父类对象 = 子类实例
|- 向下转型(强制完成):子类 子类对象 = (子类)父类实例;
向上转型的意义在于参数的统一上。统一的参数方便于方法的调用。
向下转型指父类调用子类自己特殊的方法,所有的父类发生了向上转型之后只能看见父类自己定义的全部方法信息,但看不见子类特殊的方法,于是此时就需要使用向下转型,将父类对象转换为子类对象,这样就可以使用子类的特殊功能了。
多态性:
一、方法的多态性有两点:
1、方法的重载:同一个方法名称,会根据传入参数的类型及个数不同执行不同的方法体。
2、方法的覆写:同一个方法,会根据子类的不同,实现不同的功能。
二、对象的多态性:指的是发生在继承关系类之中,子类和父类之间的转换。
1、向上转型(自动完成):父类 父类对象=地雷实例:
意义:由于所有的子类对象都可以自动的向上转型,所以在于参数的统一上。
2、向下转型(强制完成):子类 子类对象=(子类)父类实例
意义:指的是父类要调用子类自己特殊的方法,所有的父类发生了向上转型之后,只能够看到自己定义的全部方法信息,但是看不键子类特殊的方法,于是此时就需要使用向下转型,将父类对象转为子类对象
经验:
1、80%的情况下使用向上转型,因为可以得到参数类型的统一
5%的情况下会使用向下转向,目的是调用子类的特殊方法;
15%得瑟情况下是不转向的,例如:String
对于向下转向如果要
多态性的依赖:方法的覆写
方法的多态性:方法的重载:同一个方法名称,会根据传入参数的类型及个数不同执行不同的方法体
方法的覆写:同一个方法会根据子类的不同实现不同的功能
对象的多态性 指的是发生在继承关系中,子类和父类的转换
向上转型 父类 父类对象=子类实例 自动完成
向下转型子类 子类对象=(子类)父类实例 强制完 成
父类描述范围更大
向上转型为了完成参数的统一
向下转型有风险ClassCastException
课程内容版权均归魔乐科技MLDN所有 京ICP备09081638号-6
Powered by EduSoho v24.1.2 ©2014-2024