Domanda

Sto cercando di creare un'istanza di una classe dalla variabile e ho scritto del codice di prova.Ma sfortunatamente non funziona.Ecco il codice:

Object co1 = new CommandDownloadHttp();
Class cc1 = Class.forName("CommandDownloadHttp");
Object co = cc1.newInstance();

Sfortunatamente sulla seconda riga si blocca java.lang.ClassNotFoundException.

Potete per favore dirmi cosa sto facendo di sbagliato?

È stato utile?

Soluzione

CommandDownloadHttp è il file pieno nome della classe, ad es.non ha un pacchetto?Se lo fa avere un pacchetto, includere che:

Class.forName("foo.bar.CommandDownloadHttp");

(Presumo che ci sia una ragione migliore per farlo nel tuo codice reale, tra l'altro - chiaramente in questo caso non è necessario recuperare la classe per riflessione :)

Altri suggerimenti

è la classe in un pacchetto? E questo pacchetto è importata? Così funziona in linea 1. Ma è necessario il nome completo qualificato Class.forName ( "my.package.to.CommandDownloadHttp").

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top