替换另一个类中的方法

时间:2012-02-16 04:00:12

标签: java

我想制作一个Minecraft插件,用其他插件中的方法替换插件中的方法,以便轻松自定义插件。

有没有办法简单地将一个类的方法替换为另一个类的方法?有点像使用@override,但它也会覆盖原始方法。

2 个答案:

答案 0 :(得分:0)

您可以使用面向方面的框架(如AspectJ),通过建议您要覆盖的类的方法调用,以及调用新方法来实现此目的。

答案 1 :(得分:0)

无法修改方法以替换您自己的方法。

您可以使用Java反射来替换您修改的内容的实例。但是你不能在没有反射的情况下直接修改方法。

我的意思是什么。是扩展其中一个类,而不是替换保存它的文件中的原始实例。

这样做时要小心

这是一个很好的反思教程here

您还可以进一步google

请注意。这种替代是有点hackish。不鼓励在bukkit上这样做。特别是 bukkit 代码