我的同事问我一个我自己找不到最终答案的问题,这个问题是关于对象铸造的。
假设我有一个 A 类和一个工厂类,在工厂类中,我想创建 A 实例:
Public class Factory {
public A createA1() {
Object instance = get_A_Object();
//Single casting
return (A) instance;
}
public A createA2() {
Object instance = get_A_Object();
// Duplicate casting or more
return (A) (A) instance;
}
}
我的问题是:
方法 createA1() 中的单次转换与方法 createA2() 中的重复转换有什么区别?他们总是得到相同的结果吗?
编辑:
为了澄清,我的同事问我这行代码:
org.omg.CORBA_2_5.ORB orb = ((org.omg.CORBA_2_5.ORB)org.omg.CORBA.ORB.init((String[])localObject2, localProperties));
return (org.omg.CORBA_2_5.ORB)(org.omg.CORBA_2_5.ORB)(org.omg.CORBA_2_5.ORB)(org.omg.CORBA_2_5.ORB)(orb);