-4
有人能告訴我爲什麼這不起作用嗎? 這是一個基本的OOP功能。它有效,但由於某種原因,它停止工作。Java Bukkit OOP
public class InfoboardManager {
private MainInfoboard mi;
private Player p;
public InfoboardManager(Player p) {
this.p = p;
}
public MainInfoboard getMainInfoboard() {
return mi;
}
public class MainInfoboard {
public void echoName() {
System.out.println("His name is " + p.getName());
}
}
}
我打電話這樣說:
@EventHandler
public void onPlayerJoin(PlayerJoinEvent e) {
InfoboardManager ib = new InfoboardManager(e.getPlayer());
MainInfoboard mi = ib.getMainInfoboard();
mi.echoName();
e.setJoinMessage(null);
}
非常感謝您!
MainInfoBoard初始化在哪裏?只用你當前的代碼,它會拋出一個'NullPointerException'。 (你應該能夠很容易地解決我的問題?)。除了「不工作」不是對你所期望的有什麼不同的正確描述。請包括您的預期,以及獲得的結果,包括代碼,圖像和堆棧跟蹤(如果相關)。 – n247s
@ n247s我想將控制檯的玩家姓名打印出來。所以當玩家加入時,控制檯會寫出來:例如,他的名字是eNcoo。 – eNcoo
你不會在任何地方調用'echoName()'。 – Esko