Création dynamique d'instances en Java
Instancier des classes par nom est un scénario fréquemment rencontré en programmation. Java propose plusieurs façons d'y parvenir.
Méthode 1 : pour les classes avec des constructeurs sans argument
Pour les classes avec des constructeurs sans argument (no-arg), le La méthode Class.forName() peut être utilisée. Il renvoie un objet Class et la méthode newInstance() suivante crée une instance de la classe spécifiée.
Class<?> clazz = Class.forName("java.util.Date"); Object date = clazz.newInstance();
Méthode 2 : une approche plus polyvalente
Cette La méthode est préférée lorsque les classes ne peuvent pas avoir de constructeurs sans argument. Cela implique d'obtenir l'objet Constructor puis d'invoquer sa méthode newInstance().
Class<?> clazz = Class.forName("com.foo.MyClass"); Constructor<?> constructor = clazz.getConstructor(String.class, Integer.class); Object instance = constructor.newInstance("stringparam", 42);
Considérations
Les deux méthodes utilisent la réflexion, ce qui peut provoquer des exceptions si :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!