有人告诉我,如果我想使用我的主类的实例,我应该使用构造函数:
private <Main_Class_Name> plugin;
public <class_name>(<Main_Class_Name> plugin) {
this.plugin = plugin;
}
为什么这比这样做更好(或者它有什么不同?)
private <Main_Class_Name> plugin = new <Main_Class_Name>();
答案 0 :(得分:2)
使用Bukkit,您可以使用以下内容创建主插件(JavaPlugin
)类的实例:
public class MyPlugin extends JavaPlugin {
public static MyPlugin instance;
public void onEnable() {
instance = this;
}
}
Bukkit在内部实例化插件,但在服务器中处于活动状态的插件实例上调用onEnable()
。这似乎是一种普遍接受的方法。
答案 1 :(得分:0)
您无法使用第二种方式存储主插件实例,因为它会重建您已构建的插件,但存储主插件实例的最佳方法是将其保存到onEnable方法中的公共静态字段