动态创建字段java

Jos*_*bel 3 java reflection dynamic

我想知道他们是否可以使用反射或相关API在运行时动态创建类的静态字段.如果需要,我可以使用java本机接口来完成此任务,如果有人可以告诉我适当的步骤.我不想使用任何数据结构,例如哈希映射,因为我完全是为了好玩.请不要建议使用地图,因为我没有将它用于任何真实的程序,这是一个完全理论上的情况.谢谢.

Thi*_*ilo 5

您可以在类加载时使用字节码操作执行此操作.

这是一个非常复杂的解决方案,所以我会考虑其他选择.

拥有一个在编译时不知道的新字段也没有多大帮助,因为你无法对它进行任何编译.如果您打算使用反射来访问它,您可能首先使用Map.

  • 如果有足够的时间,金钱和程序员资源,任何事情都是可能的. (3认同)
  • 对于某类用例,您可以查看AOP/[AspectJ](http://www.eclipse.org/aspectj/).它基本上是一种在Java中进行某种元编程的结构化方法.(包括引入全新的成员.)它至少比直接字节码操作更少疯狂! (2认同)