在Java中,枚舉類型不能直接實現接口。但是,你可以通過在枚舉類型中定義一個匿名內部類來實現接口。這樣,每個枚舉常量都將具有實現該接口的類的實例。下面是一個示例:
public interface MyInterface {
void doSomething();
}
public enum MyEnum implements MyInterface {
CONSTANT1 {
@Override
public void doSomething() {
System.out.println("Constant 1 is doing something");
}
},
CONSTANT2 {
@Override
public void doSomething() {
System.out.println("Constant 2 is doing something");
}
};
// 實現接口方法
@Override
public abstract void doSomething();
}
public class Main {
public static void main(String[] args) {
MyEnum.CONSTANT1.doSomething(); // 輸出 "Constant 1 is doing something"
MyEnum.CONSTANT2.doSomething(); // 輸出 "Constant 2 is doing something"
}
}
在這個例子中,我們定義了一個名為MyInterface
的接口,其中包含一個名為doSomething
的方法。然后,我們創建了一個名為MyEnum
的枚舉類型,它實現了MyInterface
接口。在MyEnum
中,我們為每個枚舉常量定義了一個匿名內部類,并實現了doSomething
方法。最后,在main
方法中,我們調用了每個枚舉常量的doSomething
方法。