Рассмотрим следующие перечисления:
public enum AllColors {
WHITE,
RED,
GRAY,
GREEN,
BLUE,
BLACK
}
public enum GrayscaleColors {
WHITE,
GREY,
BLACK
}
Существует несоответствие между перечислениями (СЕРЫЙ / СЕРЫЙ) - но нет способа отловить эту опечатку во время компиляции.Это может создать проблемы, если система использует хранилище БД или систему обмена сообщениями и вынуждена преобразовывать значения перечисления на основе их значения.
Хотелось бы сделать что-то подобное:
public enum GrayscaleColors {
AllColors.WHITE,
AllColors.GRAY,
AllColors.BLACK
}
, ноэто кажется невозможным.