A coworker and I were discussed about how Java shows the enumeration. I was under the impression that they were strictly like C / C ++ or, if you add behavior (type-safe enum), then it is wrapped in a class. He believed that if it is small, then Java will compact a byte. However, I found it on the Oracle site: The meaning of the Java programming language is far more powerful than their counterparts in other languages, which is slightly higher than the glorified integer The NUM declaration defines an integer class (an enum type is dubbed). I think they are real objects, if that is so, is there any way to optimize them to save space? Thanks Edit: As stated in the comment on John's answer, I am after the ordering size of an enum No, Java enum values are actually objects they can have different implementations of methods based on fields, methods etc. - and per-value. However, there is only one set of them - it is not that you make yourself an example of anna; The set...