Ciao a tutti,
vorrei iniziare ad usare i generics, ma ho bisogno di un consiglio per utilizzarle insieme alla reflection.

In un metodo ricevo un parametro Object in cui si può trovare un tipo di utente: cliente, impiegato, tcc. tutti figli di una classe Usr.

Inizialmente devo solo fare dei controlli su delle proprietà della classe Usr presenti in tutti i figli.
Scrivo questo

Class<Usr> user = obj.getClass().getSuperclass(); // mi ritorna errore
if(user.getUsername() == null) throw new UsernameException();

Cosa devo scrivere?