"14574490"^^ . . . "Java Classloader"@cs . "Java Classloader"@cs . "42"^^ . . . . . . . . . . . . . . . . . . "10227"^^ . . . . . . . . . . . . "999508"^^ . . . "Java Classloader je v informatice sou\u010D\u00E1st b\u011Bhov\u00E9ho prost\u0159ed\u00ED Javy (JRE), kter\u00E9 umo\u017E\u0148uje dynamick\u00E9 na\u010D\u00EDt\u00E1n\u00ED Java t\u0159\u00EDd do Java Virtual Machine(JVM). Obvykle se t\u0159\u00EDdy na\u010D\u00EDtaj\u00ED pouze p\u0159i jejich pot\u0159eb\u011B, tj. za b\u011Bhu programu (lazy initialization). Java nemus\u00ED zn\u00E1t p\u0159esn\u011B v\u0161echny soubory a souborov\u00E9 syst\u00E9my, z d\u016Fvodu pou\u017Eit\u00ED pr\u00E1v\u011B classloaderu. Funkci classloaderu zaji\u0161\u0165uje koncept delegace.Softwarov\u00E1 knihovna je sb\u00EDrka souvisej\u00EDc\u00EDho objektov\u00E9ho k\u00F3du."@cs . . . . . . "Java Classloader je v informatice sou\u010D\u00E1st b\u011Bhov\u00E9ho prost\u0159ed\u00ED Javy (JRE), kter\u00E9 umo\u017E\u0148uje dynamick\u00E9 na\u010D\u00EDt\u00E1n\u00ED Java t\u0159\u00EDd do Java Virtual Machine(JVM). Obvykle se t\u0159\u00EDdy na\u010D\u00EDtaj\u00ED pouze p\u0159i jejich pot\u0159eb\u011B, tj. za b\u011Bhu programu (lazy initialization). Java nemus\u00ED zn\u00E1t p\u0159esn\u011B v\u0161echny soubory a souborov\u00E9 syst\u00E9my, z d\u016Fvodu pou\u017Eit\u00ED pr\u00E1v\u011B classloaderu. Funkci classloaderu zaji\u0161\u0165uje koncept delegace.Softwarov\u00E1 knihovna je sb\u00EDrka souvisej\u00EDc\u00EDho objektov\u00E9ho k\u00F3du. V Jav\u011B, se knihovny typicky zabaluj\u00ED do JAR soubor\u016F. Knihovny mohou obsahovat objekty r\u016Fzn\u00FDch datov\u00FDch typ\u016F. Nejd\u016Fle\u017Eit\u011Bj\u0161\u00EDm typem objektu nach\u00E1zej\u00EDc\u00EDm se JAR souboru je Java t\u0159\u00EDda. T\u0159\u00EDda v tomto p\u0159\u00EDpad\u011B je my\u0161lena jako pojmenov\u00E1n\u00ED jednotky k\u00F3du. Classloader zaji\u0161\u0165uje vyhled\u00E1n\u00ED m\u00EDsta, kde se nach\u00E1zej\u00ED knihovny, \u010Dten\u00ED jejich obsahu a tedy i na\u010D\u00EDt\u00E1n\u00ED t\u0159\u00EDd z t\u011Bchto knihoven. Na\u010D\u00EDt\u00E1n\u00ED typicky prob\u00EDh\u00E1 za b\u011Bhu programu \u201Ena po\u017E\u00E1d\u00E1n\u00ED\u201C, co\u017E znamen\u00E1, \u017Ee se t\u0159\u00EDda na\u010Dte a\u017E v p\u0159\u00EDpad\u011B, kdy bude programem pou\u017E\u00EDv\u00E1na. Ka\u017Ed\u00E1 t\u0159\u00EDda m\u016F\u017Ee b\u00FDt na\u010Dtena pouze jedin\u00FDm dan\u00FDm classloaderem.Ka\u017Ed\u00E1 t\u0159\u00EDda v Jav\u011B mus\u00ED b\u00FDt na\u010Dtena pomoc\u00ED classloaderu. Nav\u00EDc programy v Jav\u011B m\u016F\u017Eou pou\u017E\u00EDvat extern\u00ED knihovny (to jsou knihovny napsan\u00E9 a poskytovan\u00E9 n\u011Bk\u00FDm jin\u00FDm ne\u017E je autor programu) nebo m\u016F\u017Eeme \u010Derpat pouze \u010D\u00E1sti k\u00F3du z n\u011Bkolika knihoven.Kdy\u017E se JVM (Java virtual machine) spust\u00ED, jsou pou\u017E\u00EDv\u00E1ny n\u00E1sleduj\u00EDc\u00ED 3 knihovny: Bootstrap class loader Extensions class loader System class loaderBootstrap classloader na\u010Dte t\u0159\u00EDdy core Java knihoven (runtime t\u0159\u00EDdy), kter\u00E9 se nach\u00E1zej\u00ED ve slo\u017Ece /jre/lib. Tento classloader, jeho\u017E \u010D\u00E1st obsahuje j\u00E1dro JVM, je naps\u00E1n v nativn\u00EDm (strojov\u00E9m) k\u00F3du.Extensions classloader na\u010Dte k\u00F3d z adres\u00E1\u0159\u016F, kter\u00E9 obsluhuj\u00ED r\u016Fzn\u00E1 roz\u0161\u00ED\u0159en\u00ED (/jre/lib/ext nebo na\u010D\u00EDt\u00E1 i z jin\u00FDch adres\u00E1\u0159\u016F specifikovan\u00FDch ve specifikaci syst\u00E9mu java.ext.dirs). Tato definice je implementov\u00E1na ve t\u0159\u00EDd\u011B sun.misc.Launcher$ExtClassLoader.System classloader na\u010Dte k\u00F3d, kter\u00FD nalezne v java.class.path t\u0159\u00EDdy, kter\u00E9 chceme na\u010D\u00EDst, nalezneme v prom\u011Bnn\u00E9 CLASSPATH. V\u0161e je implementov\u00E1no ve t\u0159\u00EDd\u011B sun.misc.Launcher$AppClassLoader."@cs . . . . . . . . . . .