关于向上转型和向下转型
来源:互联网 发布:潮汕牛肉丸淘宝哪家好 编辑:程序博客网 时间:2024/04/30 07:58
原理:
关于向上转型和向下转型:
对象类型的方法与对象的关联是通过指针来完成的,比如:
Super sup = new Super();
单从方法而言,在构造结束后,sup对象内部会有一个指向存储在堆中的hi()方法的指针;
sub s1 = new sub();
由于sub类是 Super类 子类,构造s1的过程是:先调用父类的构造方法,构造出父类对象,于是有了指针1,指向Super的hi()方法;然后构造其余部分,指针2,指向sub的bye()方法,子类发现重载hi()重载了,指针1定位到sub()的hi()方法!
子类对象的方法指针分为两类:
一、基类的方法:先指向父类的方法,在构造自己的时候,如果是重载再指向自己的重载方法;
二、自己的新方法:指针在构造自己的时候定位方法;
举例:
class Super{
int a=10;
void hi(){
System.out.println("你好");
}
}
class sub extends Super{
int b=20;
void hi(){
System.out.println("hi~~~~");
}
void bye(){
System.out.print("sssss");
}
}
public class Inher10{
public static void main(String[] args){
Super ob1=new sub();
sub ob2=(sub)ob1;
ob2.hi();
ob2.bye();
}
}
向上转型:
Super ob1 = new sub();
ob1在sub()类型对象完成构造后,方法指针都已经正确指定方法,发现自己是个Super对象引用,于是被限定只能使用从基类继承或重载的那部分方法。
sub ob2 = (sub)ob1;
ob1被重新评定为 (sub)对象引用,再把对象地址赋给ob2,ob2指向了原先new出的对象,且它是
sub类型的,所以可以访问子类的新方法了。
- 关于向上转型和向下转型
- 关于向上转型和向下转型(转)
- 向上转型和向下转型
- 向上转型和向下转型
- 向上转型和向下转型
- 向上转型和向下转型
- 向上转型和向下转型
- 向上转型和向下转型
- 向上转型和向下转型
- 向上转型和向下转型
- 关于Java向上转型和向下转型以及类型还原
- 关于Java继承的 向上转型和向下转型
- 向上转型 向下转型
- 向上转型、向下转型
- 向上转型,向下转型
- 向上转型、向下转型
- 向上转型向下转型
- [Java] 关于向上转型 向下转型
- 流媒体的初研以前我也听说,好像kvm底层实现不太支持j2me来做streaming video/audio,但我不知道那人为什么这么说。
- 安装VMwaretools的方法
- 如何用seam实现文件上传
- C和VC中分配变量地址的问题
- 中间件的基本概念
- 关于向上转型和向下转型
- 影响互联网50人揭晓
- 第3章进程:3.1 Linux进程
- 把ppt变成exe,在没有PPT的电脑上也能随意播放
- 如何做到可变参数
- J2ME单元测试(JUnit)
- 十大最会赚钱的高校排名
- skyeye的安装和使用
- Symbian的分层