在Java中,可以使用枚举来实现回调机制。下面是一个简单的示例:
首先,创建一个枚举类,定义回调接口和回调方法:
public enum MyEnum {
INSTANCE;
public interface Callback {
void onCallback();
}
public void doSomething(Callback callback) {
// 执行某些操作
System.out.println("Doing something...");
// 回调方法
callback.onCallback();
}
}
然后,创建一个实现回调接口的类:
public class MyCallback implements MyEnum.Callback {
@Override
public void onCallback() {
System.out.println("Callback called!");
}
}
最后,使用枚举调用回调方法:
public class Main {
public static void main(String[] args) {
MyEnum.INSTANCE.doSomething(new MyCallback());
}
}
当执行doSomething
方法时,会调用传入的回调对象的onCallback
方法,从而实现回调功能。
注意,上述示例使用了单例模式来创建枚举实例,这是为了保证枚举只有一个实例,从而确保回调的一致性。