São tipos de campos que consistem em um conjunto fixo de constantes (static final), sendo como uma lista de valores pré-definidos. Na linguagem de programação Java, pode ser definido um tipo de enumeração usando a palavra chave enum. Todos os tipos enums implicitamente estendem a classe java.
Um enum pode ser declarado somente com o modificador public ou o default, assim como uma classe não interna. é opcional a colocação ou não de ponto-e-vírgula no final da declaração de um enum. O enums não são Strings nem int. Cada um dos tipos enumerados de CoffeeSize é na verdade uma instância de CoffeSize.
Os Wrapper são conhecidos na linguagem Java como classes especiais que possuem métodos capazes de fazer conversões em variáveis primitivas e também de encapsular tipos primitivos para serem trabalhados como objetos, ou seja, é feita um embrulho de streams que são fluxo de dados através de canais.
Classes Wrappers