ใช่ Enum ใช้อินเทอร์เฟซใน Java ซึ่งจะมีประโยชน์เมื่อเราต้องใช้ตรรกะทางธุรกิจบางอย่างที่ควบคู่ไปกับคุณสมบัติการเลือกปฏิบัติของวัตถุหรือคลาสที่กำหนด Enum เป็นประเภทข้อมูลพิเศษที่เพิ่มใน Java 1.5 เวอร์ชัน Enums เป็น ค่าคงที่ โดยค่าเริ่มต้นจะเป็น คงที่ และ สุดท้าย ดังนั้นชื่อของฟิลด์ประเภท enum จึงเป็น ตัวพิมพ์ใหญ่ จดหมาย .
ตัวอย่าง
interface EnumInterface { int calculate(int first, int second); } enum EnumClassOperator implements EnumInterface { // An Enum implements an interface 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); } } // Main Class public class EnumTest { public static void main (String [] args) { Operation add = new Operation(20, 10, EnumClassOperator.ADD); Operation subtract = new Operation(20, 10, EnumClassOperator.SUBTRACT); System.out.println("Addition: " + add.calculate()); System.out.println("Subtraction: " + subtract.calculate()); } }
ผลลัพธ์
Addition: 30 Subtraction: 10