类中握改庆的各个段握字段
可歼粗以看到都是软引用,目的应该是缓存
而在debug的时候,装载了类文件,在没有调用相关函数的时候,这些字段都显示为null,调用了之后才会有对象,并不是读到了空的类,这么设计的目的可能是为了方便JVM回收吧,以后再详细看看。
Tomcat通过使用ClassLoader来读取其他文件夹下的class文件,并将其加载到内存中,然后使用反射机制来调用其中的方法,从而实现槐游闹启动。Tomcat的ClassLoader是一个层次磨正结构,它可以从多个路径中加载class文件,而且可以按照自定义的顺序加载。Tomcat可以从多个路径中加载class文件铅罩,例如:WEB-INF/classes,WEB-INF/lib,Tomcat/lib,Tomcat/bin等。Tomcat在启动的时候,会先加载Tomcat/bin目录下的class文件,然后加载WEB-INF/lib目录下的class文件,最后加载WEB-INF/classes目录下的class文件。package edu.hxraidimport java.io.*
public class Resource {
public void getResource() throws IOException{
//返回读取指定资源的输入流
InputStream is=this.getClass().getResourceAsStream("/resource/res.txt")
BufferedReader br=new BufferedReader(new InputStreamReader(is))
String s=""
while((s=br.readLine())!=null)
System.out.println(s)
}
}
我们将java工程下/bin目录中的edu/hxraid/Resource.class和资源枣运文件resource/res.txt一并打包进ResourceJar.jar中,不管jar包在系统的任何目录下,调用jar包中虚衡的Resource类都可以获得jar包中的res.txt资源,再也不会找不到凳誉梁res.txt文件了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)