是否可以在Java中为enum创建动态代理?

是否可以在Java中为enum创建动态代理?,java,enums,dynamic-proxy,Java,Enums,Dynamic Proxy,我说的对吗?不可能在java枚举中使用动态代理 提前谢谢。这听起来很对-就像你不能对静态成员使用动态代理一样 你为什么一开始就要这么做?枚举通常应该是值对象或常量,这些值对象或常量在一开始就不需要或不应该被代理。Java中的动态代理只能为接口创建 但是,enums可以实现接口,因此您可以使enum实现接口,然后为该接口创建动态代理: public interface A { ... } public enum B implements A { ... } A a = Proxy.newProx

我说的对吗?不可能在java枚举中使用动态代理


提前谢谢。

这听起来很对-就像你不能对静态成员使用动态代理一样


你为什么一开始就要这么做?枚举通常应该是值对象或常量,这些值对象或常量在一开始就不需要或不应该被代理。

Java中的动态代理只能为接口创建

但是,
enum
s可以实现接口,因此您可以使
enum
实现接口,然后为该接口创建动态代理:

public interface A { ... }
public enum B implements A { ... }

A a = Proxy.newProxyInstance(cl, new Class[] { A.class }, ih);

我会让singleton实现一个接口,并在可能的情况下使用该接口。一个接口可以有多个枚举,类可以实现它。