不知道这个问题是否有意义,但是基本上我想做的是
Object obj = new Object();
BankAccount s = (BankAccount) obj;
System.out.println(s instanceof BankAccount);
我希望它返回true,但是它引发了类强制转换异常错误。为什么我不能投射BankAccount
到Object
?是因为BankAccount
自动是的子类Object
吗?
类型转换告诉编译器“您认为它obj
具有类型Object
,但是请相信我,它实际上是一个BankAccount
”。但是您在说谎,因为事实并非如此。该实例只是个Object
。
以下将起作用:
Object obj = new BankAccount();
BankAccount s = (BankAccount) obj;
System.out.println(s instanceof BankAccount);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句