Перечисления обычно используются при использовании констант.Они действуют как обеспечивающие тип для константы, а не оставляют их «свободными» как int
s или String
s, как это было сделано до того, как они были введены.
Вместо того, чтобы говорить:
public static final int MALE = 1;
public static final int FEMALE = 2;
Вы можете сказать
public enum Gender {
MALE, FEMALE;
}
и обращаться к ним как Gender.MALE
и Gender.FEMALE
.
Без перечислений метод к setGender
должен приниматьint
(в приведенном выше примере), и я могу передать что-либо, кроме 1 или 2. Затем код должен проверить, соответствует ли передаваемый int
константе и т. Д. Перечисления обеспечивают простой и понятный способтакие ситуации.