ホームページ >Java >&#&チュートリアル >Java では、列挙型でインターフェイスを実装できますか?

Java では、列挙型でインターフェイスを実装できますか?

WBOY
WBOY転載
2023-09-08 14:17:04924ブラウズ

Java では、列挙型でインターフェイスを実装できますか?

はい、Enum は、特定のオブジェクトまたはクラスの区別可能なプロパティと密接に結合されたビジネス ロジックを実装する必要がある場合に、Java でインターフェイスを実装します。役に立つかもしれません。 Enumeration は、Java 1.5 バージョンで追加された特別なデータ型です。 列挙型は 定数 で、デフォルトでは static strong> および final であるため、列挙型フィールドの名前は 大文字 になります。 ###手紙###。

interface EnumInterface {
   int calculate(int first, int second);
}
enum EnumClassOperator implements <strong>EnumInterface </strong>{ // <strong>An Enum implements an interface</strong>
   ADD {
      @Override
      public int calculate(int first, int second) {
         return first + second;
      }
   },
   SUBTRACT {
      @Override
      public int calculate(int first, int second) {
         return first - second;
      }
   };
}
class Operation {
   private int first, second;
   private EnumClassOperator operator;
   public Operation(int first, int second, EnumClassOperator operator) {
      this.first = first;
      this.second = second;
      this.operator = operator;
   }
   public int calculate() {
      return operator.calculate(first, second);
   }
}
<strong>// Main Class</strong>
public class EnumTest {
   public static void main (String [] args) {
      Operation add = new Operation(20, 10, <strong>EnumClassOperator.ADD</strong>);
      Operation subtract = new Operation(20, 10, <strong>EnumClassOperator.SUBTRACT</strong>);
      System.out.println("Addition: " + add.calculate());
      System.out.println("Subtraction: " + subtract.calculate());
   }
}

出力

<strong>Addition: 30
Subtraction: 10</strong>

以上がJava では、列挙型でインターフェイスを実装できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。