私は、オーバーロードされた保存メソッドを持つサービスを持っています。しかし問題は、このメソッドをコンパイルエラーを与える4つの変数で呼びたいときです。メソッドをvarargsでオーバーロードする方法は?
Incompatible type: String cannnot be converted to Task
メソッド名を変更せずに最初にsaveメソッドを呼び出す方法はありますか?
public void save(String message, Object... os) {//first save
adapter.save(formatMessage(message), os);
}
public void save(String username, Task task, String message, Throwable ex) {//second save
adapter.save(formatMessage(username, task, message));
}
私は4つの変数を呼び出しています。
myService.save("test", request.getMethod(), request.getRequestURI(),
Integer.valueOf(request.getContentLength()));
'Object []'これはvarargではなく配列です –
@TimCastelijns私の質問を編集しました。 – hellzone
一般に、これは 'myService.save(" test "、(Object)request.getMethod()、[...])'のような用途のためのものです。私はそれがvarargで動作するかどうかは完全には分かりません。 – Izruo