塑型
来源:互联网 发布:国金证券交易软件 编辑:程序博客网 时间:2024/06/11 12:49
塑型
Java既支持显示转换,也支持隐式转换,转换的过程被称为塑型。对象的塑型一般遵循如下的规则。
1. 子类可以被塑型为任何一个父类,反过来却不行。塑型的实际操作过程如下:
2. 接口的引用变量可以指向任何实现了其接口的类:
3. 子类在被塑型后,还可以塑型回自己的类:
为什么要塑型
塑型是为了支持多态。一般来说,塑型的应用场合有:
1. 赋值运算时,将右侧的对象的数据类型转化为左侧数据类型。
2. 方法传参时,将实际参数转换为方法声明的形参类型。(对基本数据类型依然有效)
3. 进行算数运算时,将不同的类型的项转换为相同类型的项,再进行计算。(针对基本数据类型)
4. 塑型需要注意的事项:子类被塑型后,将暂时失去自己新增的方法和属性(即父类中不存在的属性,但不包括被重新赋值的Field,被复写的Method),此时要把其看作是父类。对于被重新定义的父类属性,在塑型后将被抛弃而使用父类属性,对于被重新定义的方法,如果是实例方法,则从子类向父类依次查找,如果是类方法,则是从父类到子类依次查找。
0 0