Les principales fonctions fournies par le mécanisme de réflexion Java : 1. Déterminer la classe à laquelle appartient tout objet au moment de l'exécution ; 2. Construire un objet de n'importe quelle classe au moment de l'exécution ; 3. Déterminer les attributs de n'importe quelle classe au moment de l'exécution ; . Variables et méthodes membres ; 4. Appelez la méthode de n'importe quel objet au moment de l'exécution ; 5. Générez un proxy dynamique.
Les principales fonctions fournies par le mécanisme de réflexion de JAVA sont :
1. Déterminer la propriété de tout objet au moment de l'exécution class;
2. Construire un objet de n'importe quelle classe au moment de l'exécution
3. Déterminer les variables membres et les méthodes de n'importe quelle classe au moment de l'exécution
4. Appeler la méthode ; de n'importe quel objet au moment de l'exécution ;
5. Générer un proxy dynamique
Obtenir la classe à laquelle appartient l'objet :
Class ownerClass = owner.getClass()
Construire une classe au moment de l'exécution Objet :
Class newoneClass = Class.forName(className):第一步,得到要构造的实例的Class。 Constructor cons = newoneClass.getConstructor(argsClass):得到构造器。 cons.newInstance(args):新建实例。
Jugez les variables membres et les méthodes d'une classe au moment de l'exécution :
Class OwnerClass = Owner.getClass() : récupère la classe de l'objet.
Field field =ownerClass.getField(fieldName) : récupère les attributs déclarés par la classe via Class.
Object property = field.get(owner) : Récupère l'instance de la propriété via l'objet Si cette propriété est non publique, une IllegalAccessException sera signalée ici.
Appelez la méthode d'un objet au moment de l'exécution :
Method Method = OwnerClass.getMethod(methodName, argsClass) : récupère la méthode à exécuter via le nom de la méthode et le tableau de paramètres Class.
method.invoke(owner, args) : Exécuter la méthode. Les paramètres de la méthode Invoke sont l'objet pour exécuter cette méthode et le tableau de paramètres.
La valeur de retour est Object, qui est également la valeur de retour de cette méthode.
Pour plus de connaissances liées à la programmation, veuillez visiter : Enseignement de la programmation ! !
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!