Поскольку в Java 1.4 нет перечислений, я делаю что-то вроде этого:
public class SomeClass {
public static int SOME_VALUE_1 = 0;
public static int SOME_VALUE_2 = 1;
public static int SOME_VALUE_3 = 2;
public void receiveSomeValue(int someValue) {
// do something
}
}
Вызывающий receiveSomeValue должен передать одно из этих трех значений, но он может передать любое другое int. Если бы это было перечисление, вызывающий мог бы передать только одно допустимое значение.
Должно ли ReceiveSomeValue вызывать исключение InvalidValueException?
Какие есть хорошие альтернативы перечислениям Java 5?