O JDK1.5 apresenta um novo tipo - enumeração. Embora seja considerado uma função "pequena" em Java, traz "grande" conveniência ao meu desenvolvimento.
Uso 1: constante
Antes de JDK1.5, definimos constantes: Public Static Fianl ..... Agora que, com a enumeração, você pode agrupar as constantes relevantes em um tipo de enumeração, e as enumes fornecem mais métodos do que constantes.
cor de enum pública {vermelho, verde, em branco, amarelo}Uso 2: Switch
As instruções do Switch antes do JDK1.6 suportam apenas os tipos de int, char e enum. O uso de enumes pode tornar nosso código mais legível.
Sinal de enumeração {verde, amarelo, vermelho} public classe Trafficlight {Signal Color = Signalred; public void alteração () {switch (color) {case Red: color = SignalGreen; quebrar; Case amarelo: cor = sinalizado; quebrar; Case verde: cor = Signalyellow; quebrar; }}}Uso 3: adicione um novo método à enumeração
Se você planeja personalizar seu próprio método, deverá adicionar um ponto e vírgula no final da sequência da instância do enum. E Java exige que a instância de enum seja definida primeiro.
cor da enumeração pública {Red ("Red", 1), Green ("Green", 2), Blank ("White", 3), Yello ("Amarelo", 4); // Nome da sequência privada variável do membro; índice privado int; // Método de construção de cores privadas (nome da string, int index) {thisName = name; thisIndex = index; } // método normal public static string getName (int index) {for (color c: colorValues ()) {if (cgetIndex () == index) {return cname; }} retornar nulo; } // obtenha o método definido public string getName () {return name; } public void setName (nome da string) {thisName = name; } public int getIndex () {return index; } public void setIndex (int index) {thisIndex = index; }}Uso 4: Métodos para substituir a enumeração
Aqui está um exemplo da substituição do método tostring ().
cor da enumeração pública {Red ("Red", 1), Green ("Green", 2), Blank ("White", 3), Yello ("Amarelo", 4); // Nome da sequência privada variável do membro; índice privado int; // Método de construção de cores privadas (nome da string, int index) {thisName = name; thisIndex = index; } // Substituir o método @Override public string tostring () {return thisIndex+"_"+thisName; }}Uso 5: implemente a interface
Todas as enumes são herdadas da classe java.lang.enum. Como o Java não suporta herança múltipla, os objetos enum não podem herdar outras classes.
Comportamento de interface pública {void print (); String getinfo (); } A cor pública enum implementa o comportamento {Red ("Red", 1), Green ("Green", 2), Blank ("White", 3), Yello ("Amarelo", 4); // Nome da sequência privada variável do membro; índice privado int; // Método de construção de cores privadas (nome da string, int index) {thisName = name; thisIndex = index; } // Método da interface @Override public String getinfo () {return thisName; } // Método da interface @Override public void print () {SystemOutPrintln (thisIndex+":"+thisName); }}Uso 6: Use interface para organizar a enumeração
Public Interface Food {Enum Coffee implementa alimentos {Black_coffee, decaf_coffee, Latte, cappuccino} enum sobremesas implementos alimentos {fruta, bolo, gelato}}}Uso 7: sobre o uso de coleções de enumeração
java.util.enumset e java.util.enummap são duas coleções de enum. O enumset garante que os elementos da coleção não sejam repetidos; A chave no enummap é do tipo enum e o valor pode ser de qualquer tipo. Não vou elaborar o uso desses dois conjuntos aqui, você pode consultar a documentação do JDK.
Para os detalhes da implementação e os princípios de enumeração, consulte: Consulte:
Referência: "Thinkinjava" Quarta edição //www.vevb.com/books/75540.html
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.