Java 2 Útikalauz programozóknak 5.0

elte.java2_utikalauz5.programok
BajtkodTeszt osztály

java.lang.Object
  extended by java.lang.ClassLoader
      extended by elte.java2_utikalauz5.programok.BajtkodTeszt

public class BajtkodTeszt
extends ClassLoader

A virtuális gép bájtkódkezelésének szemléltetése. A program Java ügynökként (-javaagent), és/vagy alapértelmezett rendszerszintű osztálybetöltőként (-Djava.system.class.loader) nyomon követi a bájtkódfájlok betöltését.

Paraméterként megadható bármely Java osztály teljes neve, ennek bájtkód fájljáról (elhagyásakor a sajátjáról), valamint a csomagverziókról megjelenít pár információt. Amennyiben a bájtkódfájlt egy Java archívum tartalmazza, ezen archívum attribútumai és egyéb jellemzői is kilistázódnak.

A program futása során a virtuális gép számára rendelkezésre álló memória változásait is nyomon követhetjük.

Mióta:
Java 2 Útikalauz programozóknak 5.0
Lásd még:
ClassLoader, Package, java.lang.instrument, java.util.jar
Forrásfájl:
BajtkodTeszt.java
Letöltés:
BajtkodTeszt.jar

Beágyazott típusok
private static class BajtkodTeszt.Atalakito
          Osztálybetöltés nyomkövetése bájtkódátalakítási lehetőség felhasználásával.
 
Mezők
private static Instrumentation ügynökség
          Java ügynökök rendelkezésére álló környezet.
 
Konstruktorok
BajtkodTeszt(ClassLoader eredeti)
          Rendszerszintű osztálybetöltőt létrehozó konstruktor.
 
Metódusok
protected  Class findClass(String név)
          Adott nevű típus keresése.
 URL getResource(String név)
          Adott nevű erőforrás keresése.
protected  Class loadClass(String név, boolean felold)
          Adott nevű típus betöltése.
static void main(String[] argumentumok)
          A tesztprogram indítása.
private static void memória(String szöveg)
          A virtuális gép aktuális memóriaállapotának megjelenítése.
private static String osztálybetöltőLista(ClassLoader betöltő)
          Osztálybetöltő hierarchia kilistázása.
static void premain(String opciók, Instrumentation ügynök)
          Indítás Java ügynökként.
 
java.lang.ClassLoader osztálytól örökölt metódusok
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findResource, findResources, findSystemClass, getPackage, getPackages, getParent, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
 
java.lang.Object osztálytól örökölt metódusok
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Mezők részletezése

ügynökség

private static Instrumentation ügynökség
Java ügynökök rendelkezésére álló környezet.

Konstruktorok részletezése

BajtkodTeszt

public BajtkodTeszt(ClassLoader eredeti)
Rendszerszintű osztálybetöltőt létrehozó konstruktor.

Paraméterek:
eredeti - Az eredeti rendszerszintű osztálybetöltő.
Metódusok részletezése

osztálybetöltőLista

private static String osztálybetöltőLista(ClassLoader betöltő)
Osztálybetöltő hierarchia kilistázása. A megadott kezdetitől egészen az ős betöltőig felsoroljuk a hierarchia elemeit < jelekkel elválasztva.

Paraméterek:
betöltő - A listázás kezdő pontja.
Visszaadott érték:
A hierarchiát megjelenítő lista szöveges formában.

loadClass

protected Class loadClass(String név,
                          boolean felold)
                   throws ClassNotFoundException
Adott nevű típus betöltése. Csak a betöltés tényét jelezzük, majd delegáljuk a feladatot.

Felüldefiniálja:
ClassLoader osztály loadClass metódusát
Paraméterek:
név - A betöltendő típus neve.
felold - Előírja a betöltés után a hivatkozások feloldását.
Visszaadott érték:
A betöltött típus reprezentációja.
Specifikált kivételek:
ClassNotFoundException - Amennyiben a kért típus nem található.

findClass

protected Class findClass(String név)
                   throws ClassNotFoundException
Adott nevű típus keresése. Csak a keresés tényét jelezzük, majd delegáljuk a feladatot.

Felüldefiniálja:
ClassLoader osztály findClass metódusát
Paraméterek:
név - A keresendő típus neve.
Visszaadott érték:
A megtalált típus reprezentációja.
Specifikált kivételek:
ClassNotFoundException - Amennyiben a kért típus nem található.

getResource

public URL getResource(String név)
Adott nevű erőforrás keresése. Csak a keresés tényét jelezzük, majd delegáljuk a feladatot.

Felüldefiniálja:
ClassLoader osztály getResource metódusát
Paraméterek:
név - A keresendő erőforrás neve.
Visszaadott érték:
A megtalált erőforrás elérése.

premain

public static void premain(String opciók,
                           Instrumentation ügynök)
Indítás Java ügynökként.

Paraméterek:
opciók - Az ügynök indításakor megadott opciók.
ügynök - Az ügynök rendelkezésére álló környezet.

main

public static void main(String[] argumentumok)
A tesztprogram indítása.

Paraméterek:
argumentumok - Az indításkor megadott paraméterek.

memória

private static void memória(String szöveg)
A virtuális gép aktuális memóriaállapotának megjelenítése.

Paraméterek:
szöveg - A jelentést bevezető szöveg.

Java 2 Útikalauz programozóknak 5.0