国产宅男网站在线|亚洲A级性爱免费视频|亚洲中精品级在线|午夜福利AA毛

  • <dd id="gf5jf"><th id="gf5jf"></th></dd>

    <cite id="gf5jf"><label id="gf5jf"></label></cite>
  • <div id="gf5jf"><listing id="gf5jf"></listing></div>
    學(xué)習(xí)啦>知識大全>知識百科>公共基礎(chǔ)知識>

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

    時間: 謝君787 分享

      用法四:覆蓋枚舉的方法

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

      Java代碼

      public enum Color {

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

      // 成員變量

      private String name;

      private int index;

      // 構(gòu)造方法

      private Color(String name, int index) {

      this.name = name;

      this.index = index;

      }

      //覆蓋方法

      @Override

      public String toString() {

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

      }

      }

      用法五:實現(xiàn)接口

      所有的枚舉都繼承自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;

      // 構(gòu)造方法

      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

      }

      }

      用法七:關(guān)于枚舉集合的使用

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

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

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

      package com.hmw.test;

      /**

      * 枚舉測試類

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

      */

      public enum EnumTest {

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

      }

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

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

    2.c語言基礎(chǔ)知識總結(jié)

    3.javaee面試題

    4.2016java web面試題

    1808239