Article View: be.comp.programming
Article #14424Re: java ClassLoader
From: vortex
Date: Mon, 19 Feb 2001 21:37
Date: Mon, 19 Feb 2001 21:37
32 lines
2871 bytes
2871 bytes
>Wat is eigenlijk de bedoeling van CLassLoader. De documentatie >zegt dat men deze moet gebruiken als men een klasse van het netwerk >wil halen en er dan een instantie van te maken. Dat is maar ��n enkele toepassing. Natuurlijk zijn er nog 1001 andere manieren om aan bytecode van een klasse te komen: uit database, uit zip file, geencrypteerd, on the fly genereren, ... Bovendien kan je nog andere dingen doen dan alleen maar class files ophalen. Je kan ook zien welke en wanneer ... en die informatie zou je wel eens kunnen gebruiken. >Heeft men daarvoor eigenlijk wel ClassLoader nodig? >Kan men vb niet met URLConnection een bepaalde .class >downloaden, deze in de juiste directory zetten en dan met >forName() en newInstance() er een object van maken? Natuurlijk kan je dat zo doen, alleen trekt het natuurlijk nergens op. Je wilt je hele applicatie toch niet doorweven met code die afhankelijk is van de plaats waar je je classfile afhaalt. Als dat van de ene dag op de andere wijzigt, ben je blij dat je enkel maar de classloader moet wijzigen. Voordelen van dynamische binding/encapsulatie zijn je toch bekend? Als er vanuit ��n klasse een andere klasse nodig is, dan wordt bij het inladen van die ander klasse trouwens gebruik gemaakt van de de classloader van die ene klasse (rekening houdend met de hierarchie van de classloaders). Dat kan je niet evenaren door code te plaatsen in al die klassen, je weet bv immers niet altijd op voorhand welke klassen je over een netwerk moet afhalen. Als je dan nog weet dat het mogelijk is met behulp van classloaders genericiteit in Java kan implementeren, dan zou je toch moeten inzien dat classloaders vrij krachtige zijn.
Technical Details
Message-ID:
<982618504.157106@seven.kulnet.kuleuven.ac.be>Path:
arc1-ca.pugleaf.net!supernews.google.com!sn-xit-02!supernews.com!nntp-relay.ihug.net!ihug.co.nz!news-hog.berkeley.edu!ucberkeley!news.maxwell.syr.edu!newsfeed.icl.net!newsfeeds.belnet.be!naxos.belnet.be!news.belnet.be!not-for-mailReferences:
<96r6k0$571$1@inf6serv.rug.ac.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII X-Google-Thread: fcea4,cd50204477d034c4 X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2001-02-19 13:35:05 PST Path: arc1-ca.pugleaf.net!supernews.google.com!sn-xit-02!supernews.com!nntp-relay.ihug.net!ihug.co.nz!news-hog.berkeley.edu!ucberkeley!news.maxwell.syr.edu!newsfeed.icl.net!newsfeeds.belnet.be!naxos.belnet.be!news.belnet.be!not-for-mail From: "vortex" <vortexj@hotmail.com> Newsgroups: be.comp.programming Subject: Re: java ClassLoader Date: Mon, 19 Feb 2001 22:37:32 +0100 Organization: KULeuvenNet Lines: 34 Message-ID: <982618504.157106@seven.kulnet.kuleuven.ac.be> References: <96r6k0$571$1@inf6serv.rug.ac.be> NNTP-Posting-Host: seven.kulnet.kuleuven.ac.be X-Trace: naxos.belnet.be 982618504 2979 134.58.127.12 (19 Feb 2001 21:35:04 GMT) X-Complaints-To: abuse@belnet.be NNTP-Posting-Date: Mon, 19 Feb 2001 21:35:04 +0000 (UTC) X-Newsreader: Microsoft Outlook Express 4.72.3110.5 X-MimeOLE: Produced By Microsoft MimeOLE V4.72.3110.3 Cache-Post-Path: seven.kulnet.kuleuven.ac.be!unknown@tvd-10-67-24-209.tvd.kotnet.kuleuven.ac.be X-Cache: nntpcache 2.4.0b5 (see http://www.nntpcache.org/)