qq_35337922 2016-06-16 14:49 采纳率: 0%
浏览 1252

Java内存管理,求教大神!

class Xoo{
int x;
}

class Yoo extends Xoo{
int y;
}

main方法中运行以下代码:

Xoo[ ] arr =new Yoo();

请问以上代码,在内存中是否为:
1.在栈中创建Xoo[ ]数组类型的引用变量
2.在堆中创建引用类型数组对象,共四个元素,每个元素为Xoo类型的引用,初始值为null(我原本以为数组每个元素应为Yoo类型的引用,但经过验证使用arr[0]只能调用Xoo类的方法而不能调用Yoo类的方法,不过这样new Yoo()就显得毫无意义了)

求大神指教,我的推测是否正确,如果错误,以上代码在内存中是如何运行的?谢谢!

  • 写回答

4条回答 默认 最新

  • qq_35337922 2016-06-16 14:51
    关注

    不好意思,上面代码写错了,应该是

    Xoo[ ] arr = new Yoo[4];

    不好意思!

    评论

报告相同问题?

悬赏问题

  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试