标签: java
我想制作一个Minecraft插件,用其他插件中的方法替换插件中的方法,以便轻松自定义插件。
有没有办法简单地将一个类的方法替换为另一个类的方法?有点像使用@override,但它也会覆盖原始方法。
答案 0 :(得分:0)
您可以使用面向方面的框架(如AspectJ),通过建议您要覆盖的类的方法调用,以及调用新方法来实现此目的。
答案 1 :(得分:0)
无法修改方法以替换您自己的方法。
您可以使用Java反射来替换您修改的内容的实例。但是你不能在没有反射的情况下直接修改方法。
我的意思是什么。是扩展其中一个类,而不是替换保存它的文件中的原始实例。
这样做时要小心
这是一个很好的反思教程here
您还可以进一步google。
请注意。这种替代是有点hackish。不鼓励在bukkit上这样做。特别是 bukkit 代码。