我最近开始为Minecraft编写一个mod,但我无法摆脱这个愚蠢的错误。 “ Minecraft.getMinecraft
无法解析为类型”。我不知道如何解决此问题,我正在观看教程,并且拥有相同的版本和所有内容。
我检查了所有代码,一切都正确。如果有人可以提供帮助,那将不胜感激,因为我真的不想放弃,我真的想完成这个mod。谢谢!
出现错误的模块代码:
package module;
import net.minecraft.client.Minecraft;
public class Module {
public Minecraft mc = new Minecraft.getMinecraft();
private String name, displayName;
private int key;
private Category category;
private boolean toggled;
}
答案 0 :(得分:2)
如果要调用Minecraft
的构造函数,它应该看起来像:
public Minecraft mc = new Minecraft(...);
如果您不想调用构造函数,而是使用名为Minecraft
的类getMinecraft()
的静态方法,则应像这样删除“ new”关键字like Asier Aranbarri said:
public Minecraft mc = Minecraft.getMinecraft();
答案 1 :(得分:1)
Java Code Examples for net.minecraft.client.Minecraft上的代码示例与the comment by Asier Arranbari一致:应该是
public Minecraft mc = Minecraft.getMinecraft();
也就是说,没有new
。
发生了什么事?
当您完成new Minecraft.getMinecraft()
时,编译器会认为Minecraft.getMinecraft
是您尝试通过调用无参数构造函数实例化的类。也就是说,在getMinecraft
类内名为Minecraft
的类。但是,getMinecraft
是(静态)方法,不是类。因此,您收到消息“ Minecraft.getMinecraft无法解析为类型”。
答案 2 :(得分:1)
以下代码应该起作用:
public Minecraft mc = Minecraft.getMinecraft();
getMinecraft()
是Minecraft
类的静态方法,因此使用Minecraft.getMinecraft()
进行调用。仅在实例化新对象时才需要new
关键字,在这种情况下不是这种情况。