首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >BCEL ==是java的monkeypatching吗?

BCEL ==是java的monkeypatching吗?
EN

Stack Overflow用户
提问于 2008-09-03 20:00:16
回答 5查看 1.1K关注 0票数 3

前几天,一位同事向我介绍了BCEL,根据他的解释和快速阅读,这是一种在运行时修改字节码的方法。我的第一个想法是这听起来很危险,我的第二个想法是它听起来很酷。然后我又想了想,我回想起codinghorror post on monkey-patching,意识到这基本上是一回事。有没有人用过BCEL做一些实际的事情?我是不是说这基本上就是运行时的补丁,或者我错过了什么?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2008-09-03 20:15:16

它比经典的猴子补丁更低级一些,而且据我所知,已经加载到VM中的类没有更新。只支持再次保存到类文件中,不支持修改运行时类。

票数 1
EN

Stack Overflow用户

发布于 2008-09-03 22:23:28

来自BCEL的常见问题解答:

BCEL :我能用

动态创建或修改类吗?

答: BCEL在util包中包含有用的类,即ClassLoader和JavaWrapper.Take。请看ProxyCreator示例。

但是加密卡是...嗯..。有争议,如果您的语言不支持它,您可能不应该使用它。

如果你有一个很好的用例,我可以建议嵌入Jython吗?

票数 3
EN

Stack Overflow用户

发布于 2008-09-04 10:13:57

你可以把它看作是猴子的补丁。我不喜欢使用它(也许我从来没有遇到过好的用例?),但要熟悉它(了解Spring和Hibenrate如何使用它以及为什么使用它)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档