4.3.3 인스턴스의 바디
enum 인스턴스 각각에 메서드를 추가할 수 있지만, 열거에 정의된 메서드를 오버라이드하는 것이어야 한다. 예를 들어 계산기를 구현한다면 다음과 같이 작성할 수 있다.
public enum Operation {
ADD {
public int eval(int arg1, int arg2) { return arg1 + arg2; }
},
SUBTRACT {
public int eval(int arg1, int arg2) { return arg1 - arg2; }
},
MULTIPLY {
public int eval(int arg1, int arg2) { return arg1 * arg2; }
},
DIVIDE {
public int eval(int arg1, int arg2) { return arg1 / arg2; }
};
public abstract int eval(int arg1, int arg2);
}