我一直在做一个相当大的程序,并认为是时候分开我的课程了。1 个用于 GUI 代码的 .java 文件,以及 1 个用于 GUI 呈现的功能背后的机制的 .java 文件。但这是我的问题,我在彼此内部创建了每个类的实例,然后程序拒绝启动,所以我显然做错了什么。在我的RPG
课堂上,我有以下代码行:
public Mechanics mechanics = new Mechanics();
对于我的Mechanics
班级,我有以下代码:
public RPG rpg = new RPG();
我这样做的原因是为了尝试这个:我的很多变量都在RPG
类中,我希望能够从我的调用它们rpg
并操作它们,然后将它们发送回RPG
这里是我以前的代码测试这个功能(来自我的Mechanics
班级):
class Mechanics{
public RPG rpg = new RPG();
public Mechanics(){
}
public void helloWorld(){
System.out.println("Hello World!");
System.out.println("Health before:"+rpg.Health);
rpg.Health = rpg.Health - 5;
System.out.println("Health after:"+rpg.Health);
}
}
是的,是我班上Health
的公众号。int
RPG
在我的RPG
课堂上,这是我用来测试Mechanics
课堂的代码:
mechanics.helloWorld();
这是我的问题:代码可以编译,但是当我尝试运行它时,出现此错误:
at Mechanics.<init>(Mechanics.java:15)
at RPG.<init>(RPG.java:127)
这是我的问题。我这样做对吗?我的代码有什么问题导致我的程序不想运行?
补充:我也尝试过调用我的其他类private
,程序将编译,但仍然拒绝启动,并给我同样的错误
第 15 行Mechanics
:
public RPG rpg = new RPG();
第 127 行RPG
:
public Mechanics mechanics = new Mechanics();