是否可以在Java中为enum创建动态代理?
我说的对吗?不可能在java枚举中使用动态代理是否可以在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中的动态代理只能为接口创建 但是,
enum
s可以实现接口,因此您可以使enum
实现接口,然后为该接口创建动态代理:
public interface A { ... }
public enum B implements A { ... }
A a = Proxy.newProxyInstance(cl, new Class[] { A.class }, ih);
我会让singleton实现一个接口,并在可能的情况下使用该接口。一个接口可以有多个枚举,类可以实现它。