Maison > Java > javaDidacticiel > Cas de réflexion Java (à ne pas manquer)

Cas de réflexion Java (à ne pas manquer)

藏色散人
Libérer: 2020-06-12 13:25:37
avant
1948 Les gens l'ont consulté

Ce qui suit est un cas de réflexion Java présenté par la colonne du didacticiel Java learning J'espère qu'il sera utile aux amis dans le besoin !

Cas de réflexion Java (à ne pas manquer)

Cas de réflexion Java

Exigences

Écrire un "framework" qui ne peut modifier aucun code de cette classe En principe, cela peut nous aider à créer des objets de n'importe quel type et à exécuter n'importe quelle méthode

en utilisant le

fichier de configuration

réflexion

Étapes

Définir le nom complet de la classe de l'objet qui doit être créé et la méthode qui doit être exécutée dans le fichier de configuration

Charger et lire la configuration fichier dans le programme

Utiliser la technologie de réflexion pour charger les fichiers de classe en mémoire

Créer un objet

Exécuter la méthode

Fichier de configuration

Cas de réflexion Java (à ne pas manquer)

className=Student
methodName=sleep
Copier après la connexion

Code

import java.io.InputStream;
import java.lang.reflect.Method;
import java.util.Properties;
/**
 * @author tanglei
 * @date 2020/6/11 3:10 下午
 */
public class ReflectTest {
    public static void main(String[] args) throws Exception {
        Student s = new Student();
        Properties pro = new Properties();
        //获取配置文件的路径
        ClassLoader classLoader = ReflectTest.class.getClassLoader();
        InputStream is = classLoader.getResourceAsStream("pro.properties");
        pro.load(is);
        String className = pro.getProperty("className");
        String methodName = pro.getProperty("methodName");
        //加载类进内存
        Class cla = Class.forName(className);
        Object obj = cla.newInstance();
        //加载方法进内存
        Method method = cla.getMethod(methodName);
        method.invoke(obj);
    }
}
Copier après la connexion

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!

Étiquettes associées:
source:cnblogs.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal