以下のようなクラスを見ています。ここに実際の会社名を入れないように、クラス名と変数名を変更しました (申し訳ありません)。
import org.apache.commons.lang.enums.Enum;
public class Animal extends Enum {
public static final Animal DOG = new Animal("Dog");
public static final Animal CAT = new Animal("Cat");
private Animal(String name) {
super(name);
}
public static Animal getAnimal(String code) {
return (Animal) getEnum(Animal.class, code);
}
}
getAnimal がパラメーターとして "Dog" を渡されると、Animal が返されます。ただし、「Cat」をパラメーターとして渡すと、null が返されます。なぜこのようなことが起こるのでしょうか?