国产成人v爽在线免播放观看,日韩欧美色,久久99国产精品久久99软件,亚洲综合色网站,国产欧美日韩中文久久,色99在线,亚洲伦理一区二区

學習啦>知識大全>知識百科>公共基礎知識>

java枚舉和常量定義的區(qū)別(2)

時間: 謝君787 分享

  用法四:覆蓋枚舉的方法

  下面給出一個toString()方法覆蓋的例子。

  Java代碼

  public enum Color {

  RED("紅色", 1), GREEN("綠色", 2), BLANK("白色", 3), YELLO("黃色", 4);

  // 成員變量

  private String name;

  private int index;

  // 構造方法

  private Color(String name, int index) {

  this.name = name;

  this.index = index;

  }

  //覆蓋方法

  @Override

  public String toString() {

  return this.index+"_"+this.name;

  }

  }

  用法五:實現接口

  所有的枚舉都繼承自java.lang.Enum類。由于Java不支持多繼承,所以枚舉對象不能再繼承其他類。

  Java代碼

  public interface Behaviour {

  void print();

  String getInfo();

  }

  public enum Color implements Behaviour{

  RED("紅色", 1), GREEN("綠色", 2), BLANK("白色", 3), YELLO("黃色", 4);

  // 成員變量

  private String name;

  private int index;

  // 構造方法

  private Color(String name, int index) {

  this.name = name;

  this.index = index;

  }

  //接口方法

  @Override

  public String getInfo() {

  return this.name;

  }

  //接口方法

  @Override

  public void print() {

  System.out.println(this.index+":"+this.name);

  }

  }

  用法六:使用接口組織枚舉

  Java代碼

  public interface Food {

  enum Coffee implements Food{

  BLACK_COFFEE,DECAF_COFFEE,LATTE,CAPPUCCINO

  }

  enum Dessert implements Food{

  FRUIT, CAKE, GELATO

  }

  }

  用法七:關于枚舉集合的使用

  java.util.EnumSet和java.util.EnumMap是兩個枚舉集合。EnumSet保證集合中的元素不重復;EnumMap中的key是enum類型,而value則可以是任意類型。關于這個兩個集合的使用就不在這里贅述,可以參考JDK文檔。

  java枚舉和常量定義的區(qū)別

  創(chuàng)建枚舉類型要使用 enum 關鍵字,隱含了所創(chuàng)建的類型都是 java.lang.Enum 類的子類(java.lang.Enum 是一個抽象類)。枚舉類型符合通用模式Class Enum<E extends Enum<E>>,而 E 表示枚舉類型的名稱。枚舉類型的每一個值都將映射到 protected Enum(String name, int ordinal) 構造函數中,在這里,每個值的名稱都被轉換成一個字符串,并且序數設置表示了此設置被創(chuàng)建的順序。

  package com.hmw.test;

  /**

  * 枚舉測試類

  * @author <a href=""></a>

  */

  public enum EnumTest {

  MON, TUE, WED, THU, FRI, SAT, SUN;

  }

  public為權限修飾符,這一點很明確,static為靜態(tài)、final為終態(tài),二者都屬于同一類型修飾符,可以組合使用而不需區(qū)分先后,所以沒有區(qū)別
看過“java枚舉和常量定義的區(qū)別”的人還看了:

1.Java中變量和常量之間的區(qū)別

2.c語言基礎知識總結

3.javaee面試題

4.2016java web面試題

1808239