将对象的对象变成不同类型的对象?

simonshampoo:

不知道这个问题是否有意义,但是基本上我想做的是

Object obj = new Object();
BankAccount s = (BankAccount) obj;
System.out.println(s instanceof BankAccount);

我希望它返回true,但是它引发了类强制转换异常错误。为什么我不能投射BankAccountObject是因为BankAccount自动是的子类Object吗?

亨利:

类型转换告诉编译器“您认为它obj具有类型Object,但是请相信我,它实际上是一个BankAccount”。但是您在说谎,因为事实并非如此。该实例只是个Object

以下将起作用:

Object obj = new BankAccount();
BankAccount s = (BankAccount) obj;
System.out.println(s instanceof BankAccount);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章