我正在尝试编写一个如下所示的通用方法:
private static <T> Class<? extends T> immutableVersionOfClass(Class<T> clazz) {
return new ByteBuddy()
.subclass(clazz)
.method(not(returns(VOID)))
.intercept(to(GetterInterceptor.class))
.method(returns(VOID))
.intercept(to(SetterInterceptor.class))
.make()
.load(clazz.getClassLoader())
.getLoaded();
}
但是当最终类作为参数传递时,我得到一个异常:
java.lang.IllegalArgumentException: Cannot subclass primitive, array or final types
我希望我的方法也能够对最终类进行子类化。这个问题有什么解决方法吗?