小编Ham*_*man的帖子

为什么必须将派生类转换为显式而非隐式

Object o = new Student(); // Implicit casting

我非常了解这段代码,而且我理解的是引用变量"o"是指"Object"类型的数据,我们可以看到Student从"Object"扩展,这意味着它引用了Student的一个实例.如果我写了以下代码:

Object x = o;

这会将o中的值分配给x,这意味着如果我们遵循x的方向,我们将转到上面的学生对象!

我的问题是,为什么我不能写下面的代码?:

Student x = o;
Run Code Online (Sandbox Code Playgroud)

"o"指的是"对象"类型的对象,该对象将其地址(在内存中)分配为"o",为什么我们不能将保存在o中的值分配给x!

java casting object implicit

3
推荐指数
1
解决办法
168
查看次数

标签 统计

casting ×1

implicit ×1

java ×1

object ×1