Class类cast()方法在java.lang包中提供了cast()方法。
cast()方法将此Object强制转换为该Class或此Class对象表示的接口。
cast()方法是一种非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。
cast()方法可能会在投射对象时抛出ClassCastException。
ClassCastException:如果给定对象不为null,则在此异常中。
语法:public Type cast(Object o);
参数:对象o –表示要投射的对象。
返回值:
此方法的返回类型为Type,它根据给定的情况返回以下值,它返回转换对象。
当给定的Object为null时,它返回null。
示例//Java程序演示示例
//类的类型cast(Object o)方法的说明
class A1 {
//A1空白实施
}
class B1 extends A1 {
//B1空白实施
}
public class MainClass {
public static void main(String[] args) {
//创建MainClass的实例
MainClass mc = new MainClass();
//显示类别
System.out.println("mc.getClass():" + mc.getClass());
//创建类A1和B1的实例
A1 a = new A1();
B1 b = new B1();
//使用cast(b)方法将对象b转换为a-
Object a1 = A1.class.cast(b);
//显示类别 of object a , b and a1
System.out.println("a.getClass(): " + a.getClass());
System.out.println("b.getClass(): " + b.getClass());
System.out.println("a1.getClass(): " + a1.getClass());
}
}
输出结果mc.getClass():class MainClass
a.getClass(): class A1
b.getClass(): class B1
a1.getClass(): class B1