如何使用cglib向java类添加多个实现?
是否可以使用cglib支持此解决方案如何使用cglib向java类添加多个实现?,java,cglib,Java,Cglib,是否可以使用cglib支持此解决方案 interface I { void foo(); void boo(); } abstract class B implements I { foo(); } abstract class C implements I { boo(); } abstract class D extends B { } 代码 D d = new D(); d.foo(); d.boo(); 是的,这对CgLib来说不是问题。我甚至试过这样做,这
interface I {
void foo();
void boo();
}
abstract class B implements I {
foo();
}
abstract class C implements I {
boo();
}
abstract class D extends B {
}
代码
D d = new D();
d.foo();
d.boo();
是的,这对CgLib来说不是问题。我甚至试过这样做,这对我来说没有问题。我使用cglib-nodep-2.1_3.jar 如果你想看d.boo();什么都不做我看这里没问题 如果您想要实现类似Java8默认方法的东西,那么传递对象的状态就有点棘手了
唯一不同的是,您需要通过增强器创建一个对象。如果要更改“new D();”的行为方式,应该尝试AspectJ。我认为可以让它与AspectJ一起工作,但eclipse compliator总是会给您带来问题。应该可以忽略编译器错误。@-1,我如何改进这个问题?他们否决了投票,因为他们不理解。拥有OCJP后,您将成为Java专家。他们是Java专家,不知道你在说什么。