Mam następujące klasy:Java - parametr Zastosowanie metody klasy w parametrze
public class Publisher<T> {
private static final Class[] SUPPORTED_CLASSES = new Class[]{T1.class, T2.class};
public Publisher() {
if(Arrays.asList(SUPPORTED_CLASSES).contains(T)) { // error: expression expected!
System.out.println("Class not supported!");
}
}
}
Jak mogę sprawdzić, czy parametr klasa jest zgodny z realizacji?
W powyższym przykładzie nie można użyć parametru klasy T jako parametru.
Sprawdź ten wątek https://stackoverflow.com/questions/3403909/get-generic-type-of-class-at-ruime –
Dlaczego tego chcesz, jeśli mogę zapytać? –
@MCEmperor Chciałem sprawdzić, czy klasa jest obsługiwana iw razie potrzeby wyświetlać komunikat ostrzegawczy. – FazoM