JAVA 类的作用域的问题

来源:百度知道 编辑:UC知道 时间:2024/06/23 22:45:47
请教个JAVA变量环境的问题
我 创建了两个类 分别为 Menu 和 GiftManagement
现在我在Menu里创建 GiftManagement 的对象来调用GiftManagement 里面的方法 GiftManagement gift = new GiftManagement();
我又在GiftManagement里创建 Menu的对象来条用Menu里面的方法
Menu menu = new Menu();
可是在测试类里运行的时候却提示
Exception in thread "main" java.lang.StackOverflowError
at GiftManagement.<init>(GiftManagement.java:5)
at Menu.<init>(Menu.java:7)
高手指点是什么出了问题?

栈空间溢出了 好吧,
不用看你代码,
你肯定在不停的new 出新的对象,造成死循环了。

回去看你的代码,
public ClassA(){
ClassA a=new ClassA();
}
看有类似的代码没
你反编译一下,你就能看到如下:
public ClassA(){
public A(){
a=new ClassA();
}
}

能不能把代码贴出来?这样没法看

在各自的文件中 导入 调用的方法 的类 就行
例如:使用GiftManagement gift = new GiftManagement();
需在 Menu 类中导入 GiftManagement类

ffwfly2008回答正确。这是交叉创建对象,将无限进行下去。当然堆栈要溢出了。