gpt4 book ai didi

java - 在运行时的 java 类中添加默认构造函数

转载 作者:行者123 更新时间:2023-11-29 07:00:17 24 4
gpt4 key购买 nike

我正在编写一个库,我需要为某些对象创建代理。由于某些类不实现任何接口(interface),因此我决定使用 CGLIB 创建代理而不是 JDK 代理。但是我遇到了一些类没有默认构造函数并且 CGLIB 无法为这些类型创建代理的情况,即 CGLIB 抛出异常并显示消息:父类(super class)没有空构造函数但没有给出参数。我如何解决这个问题,是否有某种方法可以使用 cglib/asm 或其他工具在运行时添加默认构造函数?谢谢。

最佳答案

使用http://objenesis.org/ .它的一个典型用例正好解决了您的问题:

Proxies, AOP Libraries and Mock Objects - Classes can be subclassed without needing to worry about the super() constructor.

关于java - 在运行时的 java 类中添加默认构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27302765/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com