有没有办法定义一个可以处理任何未处理方法的默认或后备覆盖方法?
我问这个的原因是因为我已经创建了一个类来覆盖函数库中不断变化的类。为了成功编译类,必须定义和覆盖所有方法,但我真的不想在每次更新时都重新编码我的类。
以下是所写内容的示例:
public class CommandSignsPlayerProxy implements Player {
private Player proxy;
private boolean silent;
public CommandSignsPlayerProxy(Player targetPlayer) {
this.proxy = targetPlayer;
}
public boolean isSilent() {
return silent;
}
public void setSilent(boolean silent) {
this.silent = silent;
}
@Override
public void abandonConversation(Conversation conversation, ConversationAbandonedEvent details) {
proxy.abandonConversation(conversation, details);
}
// This function is basically the only one that NEEDS overriding
@Override
public void sendMessage(String message) {
if (!silent)
proxy.sendMessage(message);
}
@Override
public void setFlySpeed(float arg0) throws IllegalArgumentException {
proxy.setFlySpeed(arg0);
}
}
在实际代码中,还有另外 50 多个重写函数。那么有没有办法制作一个覆盖的自动处理function_name()
程序proxy.function_name()
?