6.类加载器

1.什么是类加载器,作用是什么?
类加载器就加载字节码文件(.class)

 
 

2.类加载器的种类

类加载器有三种,不同类加载器加载不同的

 

  1. BootStrap:引导类加载器:加载都是最基础的文件
  2. ExtClassLoader:扩展类加载器:加载都是基础的文件
  3. AppClassLoader:应用类加载器:三方jar包和自己编写java文件

3.怎么获得类加载器?(重点)

ClassLoader      字节码对象.getClassLoader();

package com.xiaowei.classLoader;

public class Demo {

	public static void main(String[] args) {
		
//		1.获得Demo的字节码对象 这个没有提示 需要自己敲
		Class clazz = Demo.class;
//		2.通过字节码对象 获得 类加载器
		ClassLoader classLoader = clazz.getClassLoader();
//		3.通过类加载器获得文件的绝对路径
//		getResource的参数是相对于classes的路径(classes存放的是编译后的.class文件) 也就是相对于src的路径 (src下存放的是源代码)
		String path = classLoader.getResource("com/xiaowei/classLoader/jdbc.properties").getPath();
//		classLoader.getResourceAsStream(name) 和这个方法其实是一样的

		System.out.println(path);
//		/E:/webworkspace/web25my/build/classes/com/xiaowei/classLoader/jdbc.properties
		
	}
	
}

 

猜你喜欢

转载自blog.csdn.net/qq_43629005/article/details/84786544