Minecraft Modding"无法实例化类型" creatring CreativeTab

时间:2016-03-05 14:51:07

标签: java eclipse minecraft minecraft-forge forge

我昨天编写了一个Minecraft Mod。

以下是代码:

Main.java类

package com.enricobilla.tempercraft;

import com.enricobilla.tempercraft.creativeTab.MyCreativeTab;

@Mod(modid = Reference.MOD_ID, name = Reference.MOD_NAME, version = Reference.MOD_VERSION)
public class TemperCraft {
    public static final MyCreativeTab tabTemperCraft = new MyCreativeTab("tabTemperCraft");
     ... other code ...
}

和MyCreativeTab.java类

package com.enricobilla.tempercraft.creativeTab;

import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;

public abstract class MyCreativeTab extends CreativeTabs {
    public MyCreativeTab(String label) {
        super(label);
        this.setBackgroundImageName("tab_tempercraft.png");
    }
}

所以,我的问题是Eclipse报告我"无法实例化MyCreativeTab"我在Main.java中写过new MyCreativeTab("tabTemperCraft)的地方,我不知道为什么......

我已经在互联网上看过,但是任何人都有同样的问题。

有人可以帮帮我吗?谢谢!

1 个答案:

答案 0 :(得分:2)

这里的问题是MyCreativeTab是一种抽象类型,并且无法实例化。 您需要删除类声明的abstract关键字或将其子类化。

请参阅Java Specification:

的引用
  

命名类可以声明为abstract(第8.1.1.1节),如果未完全实现,则必须声明为abstract;这样的类不能实例化,但可以通过子类扩展。