Cet article présente principalement les informations pertinentes sur le code d'implémentation du chargement dynamique Java. L'objectif principal du chargement dynamique des classes Java n'est pas de modifier le code du programme principal. En modifiant le fichier de configuration, vous pouvez utiliser différents objets pour effectuer différentes opérations. fonctions.Amis dans le besoin Vous pouvez vous référer au code d'implémentation de
chargement dynamique Java
La signification et le but de la classe de chargement dynamique Java :
Le chargement dynamique des classes en Java consiste principalement à faire fonctionner différents objets pour exécuter différentes fonctions en modifiant le fichier de configuration sans changer le code du programme principal. C'est principalement bénéfique pour l'expansion du système. Par exemple, lorsque je veux modifier une fonction, il me suffit de créer une classe puis d'écrire la fonction correspondante. La nouvelle fonction peut être utilisée via le fichier de configuration. besoin de modifier n'importe où dans le système. Il me suffit d'ajouter une classe ; Satisfait le principe ouvert-fermé (fermé pour modification, ouvert pour ajout ou suppression
public abstract class AbstractAction { public abstract String action(); } public class TestAction extends AbstractAction{ public String action() { System.out.println("I am working ! "); return "this ActionTest class"; } }
String s = "file://D:\Style.jar";***//jar所在的文件的URL* URL url = new URL(s); URLClassLoader myClassLoader = new URLClassLoader(new URL[] { url }, Thread.currentThread() .getContextClassLoader()); Class<? extends AbstractAction> myClass = (Class<? extends AbstractAction>) myClassLoader.loadClass("com.java.jarloader.TestAction"); AbstractAction action = (AbstractAction) myClass.newInstance(); String str = action.action(); System.out.println(str);) ;
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!