14. Enums
An enum type is a distinct value type (§4.1) that declares a set of named constants.
Jon Skeet
Notably, these “named constants” are effectively just numbers. They cannot express behavior, contrary to almost everything else in C#. This is one of the very few areas where Java is more expressive than C#. In Java, enums have a lot more power: An enum can declare methods and then override them for specific values, for example. While it’s possible to emulate some of the features of Java enums within C#, language (and framework) support in a future version would be extremely welcome.
The example
enum Color{ Red, Green, Blue}
declares an enum type named Color
with members Red
, Green
, and Blue
.
14.1 Enum Declarations
An enum declaration ...
Get The C# Programming Language (Covering C# 4.0), Fourth Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.