你得到一个
NullPointerException因为
p是
null。您在这里做了什么:
Player p = new Player(nome);
是声明 局部 变量
p。静态类变量
p保持不变,因此保持不变
null。
这称为阴影(JLS,第6.4.1节):
某些声明可能在其作用域的一部分中被同名的另一个声明遮蔽,在这种情况下,不能使用简单的名称来引用已声明的实体。
…
名为n的类型的声明d遮盖了在范围d内遍及d的整个范围内范围内的任何其他名为n的类型的声明。
删除
Player,因此
p您需要对静态类变量的引用:
p = new Player(nome);



