Java 强制类型转换
-------------疯狂软件java培训分享------------- 将一个类型强制转换成另一个类型的过程被称为类型转换.例如: double x =3.14; int y = (int)x; 将表达式x的值转换成整数类型,舍弃小数部分. 有时候也可能是类的对象引用的转换. 譬如: Manger boss = (Manger)staff; 我们知道如果将一个子类的引用赋给一个超类变量,是可以的. 但是反过来,必须进行类型 转换. 但是转换的时候,可能出现"谎报"的ClassCastException异常.,如果没有捕获该异常,程序就会停止. 因此, 我们应该养成一个良好的编程习惯,在进行类型转换之前,先看一下是否能成功转换. 这个过程简单地使用instanceof运算符就可以实现.例如: if(staff instanceof Manger){ boss = (Manger)staff; ... } 这样,如果转换不成功,编译器就不会进行这个转换. 综述: 只能在继承层次内进行类型转换在将超类转换成子类之前,应该使用instanceof进行检查. 注: x instanceof c 如果x 为null, x instanceof c 不会产出异常,只是返回false,因 为null没有引用任何对象. 一般情况下,应该尽量少用类型转换和instanceof运算符. 疯狂软件java培训、ios培训新年钜惠,报名Java就业班免费赠送java基础班,报名iOS就业班免费赠送iOS基础班,本月火速抢座中,为回报广大新老学员,值此新年之际推出报读就业班赠送基础班的活动。(疯狂软件学院咨询QQ:544627560电话:020-28309378 QQ:707552864详情请咨询疯狂java官网fkjava) ---------------------------2014年初活动-------------------------- 疯狂软件Java学习班方向: 1.报读JavaEE就业班赠送基础班课程。 2.开班一次性(一个月内)交清JavaEE就业班学费,赠送基础班全套课程。 疯狂软件iOS学习班方向: 1.报读iOS应用+手游就业班赠送iOS基础班课程。 2.开班一次性(一个月内)交清iOS应用+手游就业班就业班学费,赠送基础班全套课程。
页:
[1]