【发布时间】:2014-04-22 18:41:39
【问题描述】:
您好,我有几个关于类型转换和继承的问题。我一直在做一些阅读,我了解类型转换的要点和基础知识。但是,我不完全了解我可以在哪里使用它,不能在哪里使用它。
考虑这个类:
class A{
public A(){}
}
A temp = new A();
temp = (Object)temp;
此代码给我错误“无法从类型 Object 转换为类型 A”。但是,这不是从 A 类型转换为 Object 类型吗?你能不输入层次结构吗?
现在我的第二个问题是关于继承等。
当你输入时:
Object temp = new A();
到底发生了什么? temp 是 A 还是 Object?
【问题讨论】:
-
@fge 是吗?它只是创建一个空的构造函数
-
糟糕,我弄错了...但是
;是多余的 -
@appman0724 它是
A。您将使用A的实例变量和方法 -
@fge 哦,是的;没必要谢谢
-
@mangusta 为什么要我在使用 A 的实例方法之前将其强制转换为类型 A?
标签: java inheritance casting