当前位置: 首页 > 知识库问答 >
问题:

如何让一个类将自己复制到另一个可以用Java执行的具有不同名称的类中?

马渊
2023-03-14

我想做的是,根据文件名(在代码中以字符串的形式)将编译后的类[lets call it ClassA.class]复制到一个新文件(也定义为ClassA中的字符串)[lets call it ClassB.class],并能够使用“javac ClassB”执行新复制的类(使用新文件名)。

做这件事最好、最简洁的方法是什么?

编辑:工作的解决方案......

十六进制-编辑文件从ClassA到ClassB工作!所以我想任何改变二进制代码的方法都可以,文件名的长度不变。

共有1个答案

单喜
2023-03-14

您可以使用字节码操作库(Java辅助、Asm、BCEL)复制类。

有了Java辅助,它将遵循以下路线(还没有尝试过):

ClassPool pool = ClassPool.getDefault();
CtClass cc = pool.get("ClassA");
cc.setName("ClassB");
cc.writeFile("ClassB.class");
 类似资料:
  • 问题内容: 我做了以下工作,一段时间后出现了stackoverflow错误,我知道为什么会这样。 但是,如果我没有在构造函数中创建新的Cat对象,而是采用Cat类型的参数并将其分配给insideCat字段,该怎么办? 我只是在玩弄代码,只是试图找出Java可以做什么和不能做什么。在第二个代码中,一切看起来都很正常,直到我开始测试该类为止。我需要一个Cat对象来创建Cat对象(要创建这个Cat对象,

  • 我有两个具有相同属性名称的java类。如何将所有属性复制到另一个充满数据的bean。我不想使用传统的表单复制属性,因为我有很多属性。 提前感谢。 1类 2类

  • 我有这个问题。但我很难解释,因为我不知道确切的术语。希望有人能理解。我会尽力描述。我觉得这与

  • 问题内容: 我有两个成员相同,我想将一个结构复制到另一个结构,请参见下面的伪代码: 然后,我有结构的,而结构的,有什么办法复制的? 问题答案: 使用转换更改类型。以下代码使用转换将type 的值复制到type 的值: 游乐场的例子 该转换仅在基础类型,除了结构标签相同的工作。

  • 问题内容: 我有两个具有相同属性名称的java类。如何将所有属性复制到另一个装有数据的bean中。我不想使用传统形式来复制属性,因为我有很多属性。 提前致谢。 1班 2班 问题答案: 用途:

  • 我有两个java类如下 现在我有了一个A级对象Aobj,两个字段都已初始化。我用的是小豆子。copyProperties(Bobj,Aobj),但只有字段值被复制到Bobj中。名称列表为空。有没有办法深度复制一个对象,以便它复制所有字段,包括列表、地图等集合。 我在某个地方听说了推土机,不确定这是否是为了这个目的。