Java反射与代码生成

安德娜

今天,我想知道为什么在编译/应用程序启动期间,像“休眠”之类的框架使用反射而不是代码生成(例如,使用诸如BCELASM之类的库)。

是否由于历史原因(在Hibernate编写本文时,没有这样的库可以实时生成字节码),现在每个人都在使用这种方法?

我认为生成代码的方法会比使用反射的方法更快。

脂蛋白

是的Hibernate,尽管可能不会像您想象的那样大,但是代码生成可能会受益。

  1. 首先,Reflection在后台使用字节码生成,并且它并不太慢。
  2. 您不能仅使用字节码生成来做某种事情。例如,反射使您可以访问私有字段并调用私有方法,而字节码生成则是不可能的(除非您使用某些不可移植的hack)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Java反射-枚举生成

来自分类Dev

Java中有趣的反射代码

来自分类Dev

以下Java反射代码有什么问题?

来自分类Dev

Java代码反射和用于类重定向的外观

来自分类Dev

在modelio中生成Java代码

来自分类Dev

如何生成从Java代码CloudFormation?

来自分类Dev

无法从WSDL生成Java代码

来自分类Dev

Java同步功能生成的代码

来自分类Dev

Java中的通用代码生成

来自分类Dev

我如何缩进生成的Java代码Java?

来自分类Dev

内联评估代码(或使用反射)

来自分类Dev

基于XSD文件的JAXB Java代码生成

来自分类Dev

从StarUML生成Java代码时出错

来自分类Dev

如何从Java代码生成系统架构?

来自分类Dev

用于生成ConcurrentModificationException的Java示例代码

来自分类Dev

如何从“处理语言”生成Java代码

来自分类Dev

使用Java代码生成的公钥格式

来自分类Dev

关于Java中的钻石生成代码

来自分类Dev

方法不是从 antlr 生成的 java 代码触发的

来自分类Dev

使用JNI或其他工具,是否有可能在Java中实现C代码的反射?

来自分类Dev

Java QueryDsl代码生成不生成Q类

来自分类Dev

在Java中使用反射

来自分类Dev

Java,反射,内部类,

来自分类Dev

Java批注反射顺序

来自分类Dev

对整数对象的Java反射

来自分类Dev

Scala中的Java反射

来自分类Dev

Java反射与杰西

来自分类Dev

命令和Java反射

来自分类Dev

检测Java反射