私は現在、そのように定義された列挙型を使用しています:
public enum Language{
English("english", "eng", "en", "en_GB", "en_US"),
German("german", "de", "ge"),
Croatian("croatian", "hr", "cro"),
Russian("russian");
private final List<String> values;
Language(String ...values) {
this.values = Arrays.asList(values);
}
public List<String> getValues() {
return values;
}
public static Language find(String name) {
for (Language lang : Language.values()) {
if (lang.getValues().contains(name)) {
return lang;
}
}
return null;
}
}
つまり、同じメソッドとコンストラクターを使用していくつかの列挙型を使用する必要があります。私の場合、変更されるのは列挙型自体の値だけです。
再利用できるこの列挙型のスーパークラスを作成する方法はありますか?
私は次のようなことができるように:
public Language extends(specializedEnum){
English("english", "eng", "en", "en_GB", "en_US"),
German("german", "de", "ge"),
Croatian("croatian", "hr", "cro"),
Russian("russian");
}
よろしくお願いします!