Y a-t-il un moyen en Java d'importer par programme une classe avec son nom complet en tant que chaîne (c'est-à-dire comme "com.mydummypackage.MyClass"
)?Comment importer par programme la classe Java
Répondre
Si par « importation » vous voulez dire « charger un objet Class
de sorte que vous pouvez exécuter des méthodes de réflexion, » puis utilisez:
Class<?> clazz = Class.forName("com.mypackage.MyClass");
(La raison pour laquelle nous les lecteurs ont été confondus par votre mot « importation » est que généralement cela fait référence au mot-clé import
utilisé près du début des fichiers de classe Java pour indiquer au compilateur comment développer les noms de classes, par exemple import java.util.*;
).
Objet o = clazz.newInstance(); est nécessaire si nous voulons utiliser l'objet de cette classe. –
La documentation Java est une grande source de connaissances pour des trucs comme ça, je vous suggère de lire sur la documentation de la classe Object qui se trouve ici: http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Class.html
Comme mentionné dans la réponse de Jason Cohen, vous pouvez charger une objet de classe en utilisant la ligne de code suivante puis de créer une instance de cette classe que vous exécuterez la méthode newInstance de l'objet de classe comme ceci:
Class<?> clazz = Class.forName("com.mypackage.MyClass");
Object o = clazz.newInstance();
ne confondez pas « importation » avec le chargement des classes.
L'instruction d'importation ne charge rien. Tout ce qu'il fait est de vous éviter d'avoir à taper le nom de classe entièrement résolu. Si vous importez foo.bar.Baz, vous pouvez vous référer à la classe Baz dans votre code au lieu de l'épeler. C'est tout moyen d'importation.
aaaah ... ok, je vois maintenant. Merci beaucoup, c'est un élément important que j'ai raté en lisant Java 101 je suppose ... – xelurg
- 1. Puis-je importer des fichiers de classe Java dans JRuby?
- 2. $ 0 (nom du programme) en Java? Découvrez la classe principale?
- 3. Incorporation par programme de la base de données Java h2
- 4. Dump du programme par programme/JDI (Java Debugger Interface)
- 5. Comment tester la synchronisation audio par programme
- 6. Comment importer par programme un fichier .cer de clé publique dans un keystore java à l'aide de JSSE?
- 7. Comment réordonner par programme les enfants d'une sous-classe ATFolder?
- 8. importer toutes les variables de classe parente
- 9. La classe Java question
- 10. Classe d'exécution en Java
- 11. Comment importer des paramètres d'environnement dans mon programme Perl?
- 12. Comment étendre la classe IconNodeWidget en Java?
- 13. Comment exécuter NUnit par programme
- 14. comment importer un fichier tlb par programmation en C++?
- 15. Comment démarrer un programme Java?
- 16. Comment puis-je trouver par programme le chemin complet de la classe d'exécution principale
- 17. Calculer par programme la mémoire occupée par un objet Java y compris les objets qu'il référence
- 18. Recherche google par programme
- 19. Comment importer un projet Java préexistant dans Eclipse et démarrer?
- 20. Comment diagnostiquer une fuite dans la mémoire C causée par un programme Java?
- 21. Lucene (Java) - Comment spécifier le champ de recherche par défaut par programme?
- 22. Récupérer un nom de classe C++ par programme
- 23. Comment gérer les retards sur la connexion Telnet par programme?
- 24. Tri DataGridView par programme
- 25. Liaison de données par programme
- 26. Exécution d'un programme Java
- 27. Déterminer par programme quel thread Java contient un verrou
- 28. Ouvrir la fenêtre Navigateur du programme Java
- 29. Déplacement de la souris par programme
- 30. Importer une classe avec un code non sécurisé
Voulez-vous dire import (dans le fichier .java) ou voulez-vous dire instancier? –