我的主要课程是:
private Integer id;
private String code;
private static Main instance;
@Override
public void onEnable() {
saveDefaultConfig();
reload();
}
public void reload() {
id = 20;
code = "code";
}
public Integer getID() {
return id;
}
public String getCode() {
return code;
}
public Main() {
instance = this;
}
在我的其他课程中我试图获得getID和getCode 这是我获取代码和id的代码。 reload()方法被调用onEnable(starting)
Main main = new Main();
System.out.println(main.getCode());
并返回null。
答案 0 :(得分:1)
实例变量初始化为默认值 - int
为0,false
为boolean
,等等。对象引用初始化为null
。
因此,在您的示例中,String
引用code
已初始化为null
。在打印出来之前,你永远不会做任何改变。这就是你看到“null”的原因。
我喜欢你是如何开始提问的:“这是我的主要课程。”这就像看到Yoda的Stack Overflow上的一篇文章。
答案 1 :(得分:0)
问题源于您的变量未设置的事实。我假设你想要重新加载被调用,所以你可能只想继续设置一个调用reload的构造函数,如下所示:
public Main()
{
reload();
}