子类和父类的类型转换 子类转换成父类

----------------------android培训、java培训、期待与您交流! ----------------------

1)在java中允许用一个父类类型的变量引用一个子类对象,这叫把子类当做父类用,向上转型反之,不能用子类变量引用父类对象
原因: 父类有的子类一定有,子类有的父类不一定有
2) 子类当父类用注意的问题:
访问成员变量是静态绑定,即在编译阶段就和父类的成员变量绑定了,这样按理是不对的,考虑到通常成员变量会私有,此点不予以考虑
访问成员方法是动态绑定,即在编译阶段不和任何方法绑定,程序运行期间,虚拟机会根据变量指向的对象的具体类型类决定到底调用哪一个方法
虽然父类变量指向的是子类对象,但是不能调用子类有而父类没有的方法,编译器报错,原因是,动态绑定发生在运行阶段,编译器只负责检查语法,发现父类没有该方法,编译不通过,此时需要强制类型转换
强制类型转换
子类和父类的类型转换 子类转换成父类
在确定父类变量引用子类对象时,可以将父类变量的值给一个子类类型变量,需要显示声明类型转换
容易导致类型转换异常java.lang.ClassCastException
最好在强制类型转化之间用 instanceof 判断一下
// 打字员
public cl ass Typist {
public void type() {

System.out.println("Typisttype");
}
}
// 程序员继承打字员
public class Coder extends Typist {

// 覆写 type 方法
public void type() {
System.out.println("Codertype()");
}

public void code() {
System.out.println("Codercode()");
}

}

public class Demo {


public static void main(String[] args) {
Typist typist = newCoder();// 将一个子类实例当做父类类型

//根据typist变量找到指向的对象,根据对象的类型来决定调用哪个类的 type 方法, 动态绑定
typist.type();

//typist.code();编译无法通过

// 变量类型在运行期间是毫无意义的, 因为就是某个对象的引用
// 但是编译器是根据变量的类型来检查语法的
// 对象是子类,可以调用子类方法的, 但是当做父类用的时候,编译器无法识别
// 此时,需要强制类型转
Coder coder = (Coder)typist;

coder.code();

System.out.println("-------------------------");

//Typist typist1 = newTypist();
Typist typist1 = newCoder();
//类型强制转换容易导致类型转换异常java.lang.ClassCastException
// 最好的做法,加判断
// instanceof用于判断变量指向的对象是否为某种类型的对象
if(typist1 instanceof Coder){
Coder coder1= (Coder) typist1;
coder1.code();
}

Typist t = newItcast().getTypist();

}
}

----------------------android培训、java培训、期待与您交流!----------------------

详细请查看:http://edu.csdn.net/heima

  

爱华网本文地址 » http://www.413yy.cn/a/25101015/251176.html

更多阅读

转载 有关硕士论文查重的总结:使用paperpass和知网的心得!

原文地址:有关硕士论文查重的总结:使用paperpass和知网的心得!作者:蚂蚁酷9月30日上交了论文查重,今天晚些时候年级通知我们,结果出来了,没有公布相似的比例,但通过了。这算是过了论文的第一关了,略微松了一口气,回想之前改论文的痛苦过程,觉得

uvz以及pdg格式的文件转换成PDF的方法细解 pdg转换成pdf转换器

现在大家经常会下载到pdg后缀的图纸和资料,一时半会儿不知道怎么看,网上推荐的有很多种软件,但是太麻烦,得不停的下载尝试,最后不一定能用,无比恼火。这不,刚下了个数学类的书籍,竟然是uvz格式的!现在介绍种方法,将uvz文件转换成PDF格式的文件

四、中国当代油画的类型——一方收藏 俄罗斯当代油画家作品

四、中国当代油画的类型中国当代油画家的作品,粗略划分,可将其归纳为以下八类:1、意象油画意象油画是作者在对自然的感悟中,主观地将自然物象与心灵有机结合,通过独特的艺术语言和艺术形式表现出来,往往带有东方人的含蓄与内敛,倾向于性

声明:《子类和父类的类型转换 子类转换成父类》为网友泪翻涌着眼眸分享!如侵犯到您的合法权益请联系我们删除