Esiste un metodo statico della classe 'Class' che può dirci se una classe immessa dall'utente (nella forma di una stringa) è un nome di classe Java esistente valido o no?Come verificare se esiste una classe
risposta
È possibile verificare l'esistenza di una classe utilizzando Class.forName come questo:
try
{
Class.forName("myClassName");
}
catch(ClassNotFoundException e)
{
}
Tuttavia, tieni presente che questo effettivamente carica la classe , che può avere effetti collaterali. Inoltre, può fallire se la classe stessa esiste, ma non può essere caricata a causa delle classi mancanti su cui si basa. –
È possibile utilizzare Class.forName
con alcuni parametri extra per aggirare le restrizioni in risposta di Rahul.
Class.forName(String)
carica e inizializza la classe, ma Class.forName(String, boolean, ClassLoader)
non lo inizializza se il secondo parametro è falso.
Se si dispone di una classe come questa:
public class Foo {
static {
System.out.println("foo loaded and initialized");
}
}
e si dispone
Class.forName("com.example.Foo")
l'output nella console sarà foo loaded and initialized
.
Se si utilizza
Class.forName("com.example.Foo",
false,
ClassLoader.getSystemClassLoader());
si vedrà l'inizializzatore statico non viene chiamato.
Hai aggiunto dei buoni punti! +1 –
- 1. Come verificare una classe esiste in css?
- 2. Come verificare se una classe estende un'altra
- 3. Come verificare se esiste una chiave JSON?
- 4. Come verificare se esiste una chiave appSettings?
- 5. Come verificare se esiste una tabella Cassandra
- 6. Come posso verificare se esiste una directory?
- 7. Come verificare se esiste una proprietà?
- 8. Verificare se esiste una proprietà statica in una classe figlia dalla classe genitore (associazione statica avanzata)?
- 9. Verificare se esiste una sessione JSF
- 10. Verificare se esiste una tabella di accesso
- 11. Verificare se esiste una directory o
- 12. Verificare se esiste una chiave in Memcache
- 13. Come verificare se esiste un determinato assemblaggio?
- 14. Come verificare se una classe eredita un'altra classe senza istanziarla?
- 15. Verificare se esiste una directory in PHP
- 16. Come verificare se esiste una variabile in una struttura ColdFusion?
- 17. Javascript: Verificare se esiste nomeclasse
- 18. Verificare se una classe è polimorfica
- 19. Verificare se esiste chiave NSUserDefaults
- 20. Verificare se esiste un metodo in una classe estesa ma non nella classe padre
- 21. Come verificare se l'immagine esiste in Rails?
- 22. Come verificare se id esiste già - codeigniter
- 23. Come verificare se l'oggetto jQuery esiste nell'array?
- 24. Come verificare se un file esiste in una cartella?
- 25. Come posso verificare se esiste una chiave JSON in Postgres?
- 26. Come posso verificare se esiste una directory utilizzando SQL Server?
- 27. Come posso verificare se esiste una tabella nell'API C++ sqlite3?
- 28. Come posso verificare se esiste una chiave in un record?
- 29. Come posso verificare se esiste una variabile in Scheme?
- 30. Come verificare se esiste una chiave di registro
Non capisco perché tu abbia votato è una domanda valida secondo me. Benvenuto in SO! – HRgiger
@HRgiger: Grazie, apprezzo. :) –
Posso capire il downvote. a) La domanda è formulata male. b) Non è ben studiato c) vedi sotto –