Есть ли способ установить переменную, хранящуюся в родительском/суперклассе перечисления, из самого перечисления? (Следующее не компилируется, но иллюстрирует то, чего я пытаюсь достичь)....
class MyClass{
ObjectType type;
String someValue;
public void setType(ObjectType thisType){
type = thisType;
}
enum ObjectType {
ball{
@Override
public void setValue(){
someValue = "This is a ball"; //Some value isn't accessible from here
}
},
bat{
@Override
public void setValue(){
someValue = "This is a bat"; //Some value isn't accessible from here
}
},
net{
@Override
public void setValue(){
someValue = "This is a net"; //Some value isn't accessible from here
}
};
public abstract void setValue();
}
}
Затем как-то так:
MyClass myObject = new MyClass();
myObject.setType(ObjectType.ball);
После выполнения вышеописанного строка «someValue» объекта myObject теперь должна быть установлена на «Это мяч».
Есть какой-либо способ сделать это?