Java Classloader

A Java Classloader (magyarul Java osztálybetöltő), amely dinamikusan tölti be a Java osztályokat a Java virtuális gépbe, része a (angolul Java Runtime Environment). Az osztályok betöltése a Java virtuális gépbe igény szerint történik. A Java futtatható környezetnek nem kell ismernie a fájlok elhelyezkedését vagy fájl rendszert, mivel ezek felderítését a classloader végzi. A classloader megértéséhez fontos megérteni a delegáció fogalmát. A szoftverkönyvtár a kapcsolódó objektum kódok egy gyűjteménye.A java programozási nyelv, könyvtárai tipikusan JAR fájlba vannak csomagolva. A könyvtárak különböző objektum típusokat tárolnak. A legfontosabb objektum típus a java osztály jar fájlban. Az osztály nem más, mint a kód egy nevesített egysége. A classloader felelős a könyvtárak megtalálásáért, olvasásáért, és az osztályok különböző könyvtárakból való betöltésért. A betöltés tipikusan kérésre hajtódik végre. Az osztály betöltése nem hajtódik végre használaton kívüli osztályoknál, vagy nem hajtódik végre még egyszer, ha az adott osztályt egy másik program már használja. Egy osztály egy adott nevén egy időben csak egyszer töltődhet be egy adott classloaderrel. Minden java osztályt egy classloader tölt be. Továbbá a Java programok igénybe vehetnek külső könyvtárakat (azaz olyan könyvtárakat, amelyeket más által írt és támogatott forrástól származnak) vagy legalább részben külső forrásokból származó könyvtárakat. A java futtató környezet indulásához három classloadert használ: 1. * Bootstrap classloader 2. * Extensions classloader 3. * System classloader A bootstrap classloader betölti a főbb java könyvtárakat, melyek a <JAVA_HOME>/jre/lib mappában helyezkednek el. Ezt a classloadert, amely része a Java virtuális gépnek, natív kódban írták. Az extensions classloader betölti a kódot az extensions(kiterjesztés) mappából (<JAVA_HOME>/jre/lib/ext, vagy bármilyen olyan mappából, amelyet a java.ext.dirs meghatároz). Ezt a sun.misc.Launcher$ExtClassLoader osztály valósítja meg. A system classloader betölti a java.class.path változó által meghatározott osztályokat, amelyet a rendszer <a href="/w/index.php?title=Classpath_(Java)&action=edit&redlink=1" class="new" title="Classpath (Java) (a lap nem létezik)">CLASSPATH</a>-ára map-olja le. Ezt a sun.misc.Launcher$AppClassLoader osztály valósítja meg.A Java Classloader (magyarul Java osztálybetöltő), amely dinamikusan tölti be a Java osztályokat a Java virtuális gépbe, része a (angolul: Java Runtime Environment). Az osztályok betöltése a Java virtuális gépbe igény szerint történik. A Java futtatható környezetnek nem kell ismernie a fájlok elhelyezkedését vagy fájl rendszert, mivel ezek felderítését a classloader végzi. A classloader megértéséhez fontos megérteni a delegáció fogalmát. A szoftverkönyvtár a kapcsolódó objektum kódok egy gyűjteménye.A java programozási nyelv, könyvtárai tipikusan JAR fájlba vannak csomagolva. A könyvtárak különböző objektum típusokat tárolnak. A legfontosabb objektum típus a java osztály jar fájlban. Az osztály nem más, mint a kód egy nevesített egysége. A classloader felelős a könyvtárak megtalálásáért, olvasásáért, és az osztályok különböző könyvtárakból való betöltésért. A betöltés tipikusan kérésre hajtódik végre. Az osztály betöltése nem hajtódik végre használaton kívüli osztályoknál, vagy nem hajtódik végre még egyszer, ha az adott osztályt egy másik program már használja. Egy osztály egy adott nevén egy időben csak egyszer töltődhet be egy adott classloaderrel. Minden java osztályt egy classloader tölt be. Továbbá a Java programok igénybe vehetnek külső könyvtárakat (azaz olyan könyvtárakat, amelyeket más által írt és támogatott forrástól származnak) vagy legalább részben külső forrásokból származó könyvtárakat. A java futtató környezet indulásához három classloadert használ: 1. * Bootstrap classloader 2. * Extensions classloader 3. * System classloader A bootstrap classloader betölti a főbb java könyvtárakat, melyek a <java_home> /jre/lib </java_home> mappában helyezkednek el. Ezt a classloadert, amely része a Java virtuális gépnek, natív kódban írták. Az extensions classloader betölti a kódot az extensions(kiterjesztés) mappából (<java_home> /jre/lib/ext </java_home>, vagy bármilyen olyan mappából, amelyet a java.ext.dirs meghatároz). Ezt a sun.misc.Launcher$ExtClassLoader osztály valósítja meg. A system classloader betölti a java.class.path változó által meghatározott osztályokat, amelyet a rendszer <a href="/w/index.php?title=Classpath_(Java)&action=edit&redlink=1" class="new" title="Classpath (Java) (a lap nem létezik)">CLASSPATH</a>-ára map-olja le. Ezt a sun.misc.Launcher$AppClassLoader osztály valósítja meg.

Date
20201109091535
20201204030013
Is primary topic of
Java Classloader
Link from a Wikipage to an external page
www.developer.com/java/other/article.php/2248831
www.devx.com/Java/Article/31614
www.onjava.com/pub/a/onjava/2003/11/12/classloader.html
www.onjava.com/pub/a/onjava/2005/04/13/dependencies.html%3Fpage=1
www.roseindia.net/javatutorials/hotdeploy.shtml
web.archive.org/web/20110713091503/http:/www.javaworld.com/jw-10-1996/jw-10-indepth.html
citeseer.ist.psu.edu/liang98dynamic.html
SameAs
m.0269 1t
Subject
Kategória:Java
Url
2248831
31614
WasDerivedFrom
Java Classloader?oldid=23860681&ns=0
Java Classloader?oldid=25178509&ns=0
WikiPageLength
10234
10484
Wikipage page ID
931165
Wikipage revision ID
23860681
25178509
WikiPageUsesTemplate
Sablon:Fordítás
Sablon:Ny-en
Sablon:Portál
Sablon:Reflist
Sablon:Wayback