Problem polimorficzny. Mam klasę z dwoma metodami:
public final class MojaKlasa {
public static void warn (Object... argumenty) {
System.out.println("object");
}
public static void warn (Exception ex) {
System.out.println("exception");
}
}
z kodu wywołuje wiec sobie:
MojaKlasa.warn(new Exception());
I oczywiście wywoływany jest warn dla Exception. Zależy mi jednak na tym aby wywołać z tym samym argumentem KONKRETNIE metodę dla Object. Da się jakoś? Wiem ze mogę zrzutować ordynarnie:
MojaKlasa.warn((Object)new Exception());
Ale może coś rozsądniejszego? Dodam tylko ze MojaKlasa zamknięta jest w libach wiec nie mam możliwości jej edytowania, a pomysły z "zrób nowa klasę dziedziczącą po MojaKlasa" tez raczej odpadają, bo wszędzie w projekcie już jest używana wersja z biblioteki.