Weitere aktuelle Java-Titel finden Sie bei dpunkt.
 Inhaltsverzeichnis   Vorhergehendes Paket   Seite Zurück   Seite Vor   Nächstes Paket   Paketübersicht   Index

Klasse java.lang.ClassLoader1.0

java.lang.Object
   |
   +--java.lang.ClassLoader

Deklaration

public abstract class ClassLoader
extends java.lang.Object

Beschreibung

Die Klasse ClassLoader ist abstrakt und dient als Basis zur Implementierung eines eigenen Mechanismus, mit dem Klassen in die Virtual Machine geladen werden können.


 
Konstruktoren
protectedClassLoader()
protectedClassLoader(ClassLoader parent)     [1.2]
 
Methoden
public synchronized voidclearAssertionStatus()     [1.4]
protected final ClassdefineClass(byte[] b, int off, int len)
      Verworfen in Version 1.1. Ersetzt durch defineClass(java.lang.String, byte[], int, int).
protected final ClassdefineClass(String name, byte[] b, int off, int len)     [1.1]
protected PackagedefinePackage(String name, String specTitle, String specVersion, String specVendor, String implTitle, String implVersion, String implVendor, URL sealBase)     [1.2]
protected ClassfindClass(String name)     [1.2]
protected StringfindLibrary(String libname)     [1.2]
protected final ClassfindLoadedClass(String name)     [1.1]
protected ClassfindLocalClass(String name)     [1.2]
protected URLfindResource(String name)     [1.2]
protected EnumerationfindResources(String name)     [1.2]
protected final ClassfindSystemClass(String name)
public static ClassLoadergetBaseClassLoader()     [1.2]
public URLgetLocalResource(String name)     [1.2]
public EnumerationgetLocalResources(String name)     [1.2]
protected PackagegetPackage(String name)     [1.2]
protected Package[]getPackages()     [1.2]
public ClassLoadergetParent()     [1.2]
public URLgetResource(String name)     [1.1]
public InputStreamgetResourceAsStream(String name)     [1.1]
public final EnumerationgetResources(String name)     [1.2]
public static URLgetSystemResource(String name)     [1.1]
public static InputStreamgetSystemResourceAsStream(String name)     [1.1]
public static EnumerationgetSystemResources(String name)     [1.2]
public ClassloadClass(String name)
protected synchronized ClassloadClass(String name, boolean resolve)     [1.1]
protected final voidresolveClass(Class c)
public synchronized voidsetClassAssertionStatus(String className, boolean enabled)     [1.4]
public synchronized voidsetDefaultAssertionStatus(boolean enabled)     [1.4]
public synchronized voidsetPackageAssertionStatus(String packageName, boolean enabled)     [1.4]
protected final voidsetSigners(Class c, Object[] signers)     [1.1]


 

Konstruktoren im Detail

protected ClassLoader()
Erzeugt ein neues ClassLoader-Objekt.
protected ClassLoader(ClassLoader parent)     [1.2]
Erzeugt ein neues ClassLoader-Objekt, das die Aufrufe an den ClassLoader parent weiterleitet.

 

Methoden im Detail

public synchronized void clearAssertionStatus()     [1.4]
Bewirkt, dass bei allen von diesem ClassLoader geladenen Klassen und Paketen die Zusicherungen nicht geprüft werden, und zwar unabhängig davon, ob diese selbst Voreinstellungen für die Prüfung von Zusicherungen haben.
protected final Class defineClass(byte[] b, int off, int len)
Erzeugt anhand der im Byte-Array b ab der Position off stehenden len Bytes eine Klassendefinition und liefert diese in einem Class-Objekt zurück. Dieses Objekt muss anschließend an resolveClass() übergeben werden, um die Klasse benutzen zu können.
Exception: ClassFormatError
protected final Class defineClass(String name, byte[] b, int off, int len)     [1.1]
Zusätzlich zur vorhergehenden Variante kann mit name der Name der Klasse angegeben werden. Dieser Name wird mit dem im Bytecode enthaltenen Namen auf Übereinstimmung geprüft, wodurch diese Variante sicherer ist als die erste.
Exception: ClassFormatError
protected Package definePackage(String name, String specTitle, String specVersion, String specVendor, String implTitle, String implVersion, String implVendor, URL sealBase)     [1.2]
Mit dieser Methode kann ein ClassLoader ein Paket definieren. Bevor eine Klasse geladen wird, muss das entsprechende Paket definiert werden. Mit sealBase kann eine URL angegeben werden, auf die der Paketname name relativ bezogen wird. Rückgabewert ist ein Package-Objekt, das das neu definierte Paket repräsentiert.
Exception: IllegalArgumentException
protected Class findClass(String name)     [1.2]
Diese Methode wird von loadClass aufgerufen, um den Code für eine Klasse zu laden und ein zugehöriges Class-Objekt zu erzeugen. Sie sollte in einer Unterklasse mit der spezifischen Ladefunktionalität überschrieben werden.
Exception: ClassNotFoundException
protected String findLibrary(String libname)     [1.2]
Liefert den absoluten Pfadnamen für die durch libname bezeichnete Shared Library zurück. Diese Methode wird von der Virtual Machine aufgerufen, um native Implementierungen zu laden.
protected final Class findLoadedClass(String name)     [1.1]
Liefert ein Class-Objekt für die durch name bezeichnete Klasse oder null, falls diese Klasse nicht von diesem ClassLoader geladen worden ist.
protected Class findLocalClass(String name)     [1.2]
Versucht, die durch name bezeichnete Klasse vom lokalen System zu laden.
Exception: ClassNotFoundException
protected URL findResource(String name)     [1.2]
Liefert die URL zurück, von der die durch name bezeichnete Ressource geladen werden kann oder null, falls keine Ressource mit diesem Namen gefunden wurde.
protected Enumeration findResources(String name)     [1.2]
Liefert eine Liste von URLs zurück, unter denen Ressourcen mit der Bezeichnung name geladen werden können. Falls keine Ressource mit diesem Namen gefunden wurde, ist die Liste leer.
Exception: IOException
protected final Class findSystemClass(String name)
Lädt die durch name bezeichnete Klasse vom lokalen Dateisystem in plattformabhängiger Weise.
Exception: ClassNotFoundException
public static ClassLoader getBaseClassLoader()     [1.2]
Liefert den Basis-ClassLoader, der per Voreinstellung von allen neu erzeugten ClassLoadern zur Delegation verwendet wird.
public URL getLocalResource(String name)     [1.2]
Liefert ein URL-Objekt, mit dem die lokale Ressource mit dem Namen name geladen werden kann. Falls keine solche Ressource gefunden wurde, ist der Rückgabewert null.
public Enumeration getLocalResources(String name)     [1.2]
Liefert eine Aufzählung aller Ressourcen, die unter den Namen name lokal verfügbar sind. name ist ein Pfadname mit dem Trennzeichen "/". In der Aufzählung sind URL-Objekte enthalten, mit denen die Ressourcen geladen werden können. Falls keine Ressource unter dem Namen gefunden wurden, ist die Aufzählung leer.
Exception: IOException
protected Package getPackage(String name)     [1.2]
Falls in diesem ClassLoader ein Paket mit dem Namen name erstellt wurde, wird das zugehörige Package-Objekt zurückgeliefert, sonst ist das Ergebnis null.
protected Package[] getPackages()     [1.2]
Liefert ein Array, das Package-Objekte für alle in diesem ClassLoader definierten Pakete enthält.
public ClassLoader getParent()     [1.2]
Liefert den ClassLoader, an den delegiert wird, oder null, wenn der System-ClassLoader verwendet wird.
public URL getResource(String name)     [1.1]
Liefert ein Exemplar von URL, mit dem die durch name bezeichnete Ressource ausgelesen werden kann.
public InputStream getResourceAsStream(String name)     [1.1]
Liefert einen InputStream, mit dem die durch name bezeichnete Ressource ausgelesen werden kann. Falls die Ressource nicht gefunden werden konnte, wird null zurückgegeben.
public final Enumeration getResources(String name)     [1.2]
Liefert eine Aufzählung aller Ressourcen, die unter dem Namen name verfügbar sind. name ist ein Pfadname mit dem Trennzeichen "/". In der Aufzählung sind URL-Objekte enthalten, mit denen die Ressourcen geladen werden können. Falls keine Ressource unter dem Namen gefunden wurden, ist die Aufzählung leer.
Exception: IOException
public static URL getSystemResource(String name)     [1.1]
Liefert ein Exemplar von URL, mit dem die durch name bezeichnete System-Ressource ausgelesen werden kann.
public static InputStream getSystemResourceAsStream(String name)     [1.1]
Liefert einen InputStream, mit dem die durch name bezeichnete System-Ressource ausgelesen werden kann.
public static Enumeration getSystemResources(String name)     [1.2]
Liefert eine Aufzählung aller System-Ressourcen, die unter den Namen name verfügbar sind. name ist ein Pfadname mit dem Trennzeichen "/". In der Aufzählung sind URL-Objekte enthalten, mit denen die Ressourcen geladen werden können. Falls keine Ressource unter dem Namen gefunden wurden, ist die Aufzählung leer.
Exception: IOException
public Class loadClass(String name)
Lädt die durch name bezeichnete Klasse, wobei Abhängigkeiten zu anderen Klassen automatisch aufgelöst werden. In name kann entweder der Punkt oder der Schrägstrich als Paket-Trennzeichen benutzt werden.
Exception: ClassNotFoundException
protected synchronized Class loadClass(String name, boolean resolve)     [1.1]
Lädt die durch name bezeichnete Klasse. In name kann entweder der Punkt oder der Schrägstrich als Paket-Trennzeichen benutzt werden. Mit resolve kann entschieden werden, ob die Auflösung von Abhängigkeiten nötig ist. Bei true werden auch die von dieser Klasse benötigten Klassen geladen.
Exception: ClassNotFoundException
protected final void resolveClass(Class c)
Löst Abhängigkeiten zwischen der durch c repräsentierten Klasse und Klassen auf, auf die diese Klasse zugreift. resolveClass() muss vor der Erstbenutzung dieser Klasse aufgerufen werden. Dies kann auch direkt beim Aufruf von loadClass() erfolgen.
public synchronized void setClassAssertionStatus(String className, boolean enabled)     [1.4]
Aktiviert oder deaktiviert die Prüfung von Zusicherungen in der Klasse className in Abhängigkeit von enabled. className muss eine Top-Level-Klasse bezeichnen. Der gesetzte Status gilt auch für darin geschachtelte Klassen. Diese Methode ist nur dann wirksam, wenn sie aufgerufen wird, bevor die betreffende Klasse geladen wird.
public synchronized void setDefaultAssertionStatus(boolean enabled)     [1.4]
Diese Methode setzt für alle von diesem ClassLoader geladenen Pakete und Klassen eine Voreinstellung, ob Zusicherungen geprüft werden. Für einzelne Klassen und Pakete kann mit den Methoden setClassAssertionStatus() und setPackageAssertionStatus eine individuelle Einstellung vorgenommen werden, die Vorrang vor dem mit dieser Methode gesetztem Standardwert hat.
public synchronized void setPackageAssertionStatus(String packageName, boolean enabled)     [1.4]
Aktiviert oder deaktiviert die Prüfung von Zusicherungen in dem Paket packageName in Abhängigkeit von enabled. Diese Einstellung gilt auch für Unterpakete. Für einzelne Klassen kann mit setClassAssertionStatus() eine individuelle Einstellung vorgenommen werden, die Vorrang vor dem mit dieser Methode gesetztem Paket-Standardwert hat.
protected final void setSigners(Class c, Object[] signers)     [1.1]
Registriert die in signers vermerkten Signierer bei der durch c repräsentierten Klasse.


 Inhaltsverzeichnis   Vorhergehendes Paket   Seite Zurück   Seite Vor   Nächstes Paket   Paketübersicht   Index

Copyright © 2002 dpunkt.Verlag, Heidelberg. Alle Rechte vorbehalten.