sto facendo alcune prove in java, ho una classe con questo costruttore
codice:
public <T extends JPanel, MyInterface> OggettoGrafico(T pannelloPadre)
{
super();
this.pannelloPadre=pannelloPadre;
}
in pratica voglio che come pannello padre possa essere passato solo un JPanel che implementa MyInterface
fin quì tutto bene, il problema è prima, quando fra gli attributi inserisco
codice:
private JPanel pannelloPadre;
infatti cosi facendo devo ogni volta effettuare un cast su pannelloPadre per usare i metodi di MyInterface, ho provato a fare una cosa del tipo
codice:
private <T extends JPanel, MyInterface> T pannelloPadre;
ma richiede l'inserimento del parametro a tutta la classe, cosa che vorrei evitare dato che il parametro T non deve dipendere dall'utente che utilizza la classe