自定義類加載器_第1頁
已閱讀1頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 自定義類加載器 自定義類加載器 1、類綁定 、類綁定 package cn.itcast.demo; public class BoundDemo { public static void main(String[] args) { A a = new B(); System.err.println(a.age);//100 System.err.println(a.num);//100 a.abc(

2、);//abc...1000 所有非靜態(tài)分開方法都是在運行時綁定,動態(tài)綁定,其他的都是靜態(tài)綁定 //靜態(tài)綁定是指在編譯時已經指定引用的就是靜態(tài)綁定 a.aaa();//aaa..100 } } class A{ public int age=100; public static int num = 100; public void abc(){ System.err.println(“abc....100“); } public sta

3、tic void aaa(){ System.err.println(“aaa....100“); } } class B extends A{ public int age=1000; public static int num = 1000; public void abc(){ System.err.println(“abc....1000“); } public static void aaa(){ System.err.pri

4、ntln(“aaa....1000“); } } 1、 類加載 類加載 所有類加載器,都是 ClassLoader 的子類。 類加載器永遠以.class 運行的目錄為準。 } } 運行的結果: 1類加載器是:class org.apache.catalina.loader.WebappClassLoader 2類加載器是:class org.apache.catalina.loader.StandardClassLoader 3類加載器

5、是:class sun.misc.Launcher$AppClassLoader 4 類加載器是:class sun.misc.Launcher$ExtClassLoader 2、 自定義類加載器 自定義類加載器 JDK 以哪一個類加載器讀取 A 類的字節(jié)碼,則 A 類就是被哪一個類加載器加載 的。 一個同名的類,是否可以相互轉換,要看是否是在同個類加載器中。 package cn.itcast.demo; import java.i

6、o.File; import java.io.FileInputStream; import java.io.InputStream; import java.net.URL; public class MyClassLoader2 extends ClassLoader { /** * name:cn.itcast.demo.Person * 根據包名找到.class文件 * cn.itcast.demo.person = >

7、cn/itcast/demo/Person.class */ public Class findClass(String name) throws ClassNotFoundException { String classNameWithPackage=name; Class cls = null; try { //先將 name = name.replace(“.“,“/“); name +=“.class“; //確定目錄 URL

8、url = MyClassLoader2.class.getClassLoader().getResource(name); System.err.println(“>>:“+url.getPath()); File file = new File(url.getPath()); InputStream in = new FileInputStream(file); //讀取這個.class文件的字節(jié)碼 byte[] b =

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論