将枚举类型放在不同的类中

时间:2015-02-06 23:49:01

标签: java enums

我正在制作一个枚举,表示基于图块的游戏的不同图块类型,我有一个超类,我想要继承的图块实例。正如我刚刚发现的那样,枚举不能从另一个类扩展或继承!

我该如何解决这个问题?我的想法是,有可能让Tile类成为普通类,然后在另一个类中使用枚举。这有可能实现,还是我需要以另一种方式解决问题?

2 个答案:

答案 0 :(得分:0)

您可以使用类的静态字段,例如:

class Directions {
    static int LEFT = 0;
    static int DOWN = 1;
    static int RIGHT = 2;
    static int UP = 3;
}

答案 1 :(得分:0)

你可以在枚举中包含任何字段。

public enum YourEnum {
    FIRST(new First()),
    SECOND(new Other()),

    private final Tile tile;   

    private YourEnum(int code, Tile t) {
        this.code = code;
        this.tile = t;
    }

    public Tile getTile() {
        return tile;
    }
}