上转型对象
2015-09-13 16:36
141 查看
1. 定义
如果B类是A类的子类或间接子类,当用B类创建对象b并将这个对象b的引用赋给A类对象a时,如:A a; a = new B(); OR A a; B b = new B(); a = b;
则称A类对象a是子类B对象b的上转型对象。
2. 性质
对象b的上转型a的实体是有子类B创建的,但是上转型对象会失去子类B的一些属性和功能。上转型对象具有以下特点:上转型对象不能操作子类新增加的成员变量,不能使用子类新增的方法。即为较子类B失去一些属性和功能,这些属性和功能是新增的。
上转型对象可以操作子类继承或隐藏的成员变量,也可以使用子类继承的或重写的方法。即为上转型对象可以操纵父类原有的属性和功能,无论这些方法是否被重写。
上转型对象调用方法时,就是调用子类继承和重写过的方法。而不会是新增的方法,也不是父类原有的方法。
可以将对象的上转型对象再强制转换到一个子类对象,强制转换过的对象具有子类所有属性和功能。
相关文章推荐
- leetcode Evaluate Reverse Polish Notation
- hibernate3(5)
- uva 10129
- 交叉环境下,配置ffmpeg的configure时指定交叉编译参数
- Single Number III
- hdu 3966 树链分割第一3遍
- 使用 CSS 媒体查询创建响应式网站
- 3d相册弹出效果02
- [原]MySQL哈希之哈希索引
- 中间件简介
- aix参考
- Python二分查找详解
- HTML基本语言规则
- HDU 5446 Unknown Treasure (2015年长春赛区网络赛J题)
- jquery统一关闭浏览器缓存
- HDU 5442 后缀自动机+kmp
- 如何创建无名文件夹?
- POJ 2385 Lake Counting (dfs_连通性)
- JS继承及原型链
- 《剑指offer》正则表达式匹配