TD3 - Chargement dynamique

De $1

Table des matières
  1. 1. MyClassLoader

Version de 19:31, 19 Avr 2024

cette version.

Revenir à liste des archives.

Voir la version actuelle

Ce TP a pour objectif d'étudier les mécanismes de chargement dynamique en Java et en particulier le fonctionnement de la classe ClassLoader.

MyClassLoader

On veut créer son propre ClassLoader qui cherche les classes à charger dans une liste de répertoires ou de ressources compressées (jar, zip). Pour cela vous devez créer une classe MyClassLoader qui spécialisera (la classe SecureClassLoader. et surchargera la méthode loadClass. On pourra par exemple compléter le code donné ci-dessous:

package miage.m1.dynamicLoading;

public class MyClassLoader extends SecureClassLoader {
 private ArrayList<File> path = new ArrayList<File>();

 @Override
 protected Class<?> findClass(String name) throws ClassNotFoundException {
  byte[] b = loadClassData(name);
  return super.defineClass(name, b, 0, b.length);
 }

 private byte[] loadClassData(String name) throws ClassNotFoundException {
  /* A COMPLETER */
 }
}