对象转型问题 求教! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 向上转型会使类的接口变窄,例子就是shape,cicle那个.向下转型编译器要求显示的说明,额,我一般用的时候就是将对象从容器中取出的时候.从object向下转型成特定的类.新手,不知道说的对不对. class Parent{}class Child extends parent{}public class Test{ public static void main(String [] args){ Parent p1=new Parent(); Parent p2=new Child(); Child c1=new Child(); Child c2=(Child)p2;//编译通过,运行通过; Child c3=(Child)p1;//编译通过,运行错误; Date d1=(Date)c1;//编译错误,运行错误; }}总结:1:强制转换必须在继承链上边; 2:在进行强制转换之前,最好用instanceof 操作符检查一下;eg:if(p2 instanceof Child){ Child c2=(Child)p2;//编译通过,运行通过;} GET SET 基础问题 jdom解析utf-8的xml,中文乱码问题 通过以下程序显示计算机上的串口,为什么检查不到呢。 用javascrip编写一个验证的程序 怎样获得HTML 的属性名?用JAVA代码写出来 综合问题~急~~ JBuilder中的字体的颜色该怎么定制? applet可以实现c/s吗? 建立聊天程序 UDP server 需要用到线程么?如果需要,怎么用? JAVA中和SQL SERVER相连问题? 救命啊,恳请各位高手赐答 如何用java读取本机上所打的windows补丁信息??
向下转型编译器要求显示的说明,额,我一般用的时候就是将对象从容器中取出的时候.从object向下转型成特定的类.
新手,不知道说的对不对.
class Parent{}
class Child extends parent{}
public class Test{
public static void main(String [] args){
Parent p1=new Parent();
Parent p2=new Child();
Child c1=new Child();
Child c2=(Child)p2;//编译通过,运行通过;
Child c3=(Child)p1;//编译通过,运行错误;
Date d1=(Date)c1;//编译错误,运行错误;
}
}总结:1:强制转换必须在继承链上边;
2:在进行强制转换之前,最好用instanceof 操作符检查一下;
eg:
if(p2 instanceof Child){
Child c2=(Child)p2;//编译通过,运行通过;
}