加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 在运行时将新方法和属性注入到类中

发布时间:2020-12-15 02:49:37 所属栏目:Java 来源:网络整理
导读:有没有什么办法可以在运行时将新方法和属性注入到类中. http://nurkiewicz.blogspot.com/2009/09/injecting-methods-at-runtime-to-java.html声明我们可以通过使用Groovy来做到这一点. 只使用Java可以吗? 解决方法 Is it possible by just doing using Java
有没有什么办法可以在运行时将新方法和属性注入到类中.

http://nurkiewicz.blogspot.com/2009/09/injecting-methods-at-runtime-to-java.html声明我们可以通过使用Groovy来做到这一点.

只使用Java可以吗?

解决方法

Is it possible by just doing using
Java?

简单的答案是强调“你不想那样做!”.

这在技术上是可行的,但并非没有采用极其复杂,昂贵和脆弱的技巧,如字节码修改1.即便如此,您还必须依靠动态加载来访问修改后的类型和(可能)反射以利用其新成员.简而言之,你会为自己创造很多痛苦,几乎没有任何好处.

Java是一种静态类型语言,添加/修改类类型签名可能会破坏类的静态类型.

1 – AspectJ等允许您向类中注入其他行为,但它可能不是您所追求的“运行时”注入.当然,注入的方法不能用于静态编译的代码来调用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读