Перечисления // это иной тип, отличный от классов
, который объявляется с конечным числом конструкторов
. Вот небольшой пример:
enum Color {
red;
green;
blue;
}
class Colors {
static function toInt( c : Color ) : Int {
return switch( c ) {
case red: 0xFF000;
case green: 0x00FF00;
case blue: 0x0000FF;
}
}
}
Когда у вас есть фиксированное число значений и вы хотите быть уверенным, что только эти значения будут использованы, тогда перечисления// это лучший подход, который гарантирует, что другие значения не могут быть созданы.