我已经阅读了一些关于aspectj的文章,我知道它可以增强类,这很有吸引力.我有一个非常愚蠢的问题,我找不到一个明确的答案:
Aspectj可以向java.lang.String添加方法吗?
或者类似的问题:如果我无法获得某些类的来源,我可以通过aspectj来增强它们吗?
我只是在寻找别的东西,偶然发现了这个问题.我想指出,即使被接受,但科瑟的答案有些不正确.问题提到对LTW没有限制,因此CTW仍处于竞争中.可以编织JDK/JRE类文件,然后在稍后的步骤中将建议的类添加到引导类路径.我之前已经完成了(甚至完全是被问到的,即在String中声明一个新方法),它没有问题.
不,你不能这样做我的朋友.
我认为这是你正在寻找的类型没有暴露给用户
有关详细信息,请查看AspectJ开发环境指南#Special Cases
正如它所说
无论使用何种aop.xml文件,以下类都不会暴露给LTW基础结构