



package com.atguigu.java1;import org.junit.Test;import java.io.FileInputStream;import java.io.IOException;import java.util.Properties;/** * 了解类的加载器 * * * @author Dxkstart * @create 2021-06-06 21:34 */public class ClassLoaderTest {    @Test    public void test1(){        //对于自定义类,使用系统类加载器进行加载        ClassLoader classLoader = ClassLoaderTest.class.getClassLoader();        System.out.println(classLoader);//系统类加载器        //调用系统类加载器的getParent():获取扩展类加载器        ClassLoader classLoader1 = classLoader.getParent();        System.out.println(classLoader1);//扩展类加载器        //调用扩展类加载器的getParent():无法获取引导类加载器        //引导类加载器主要负责加载java的核心类库,无法加载自定义类的。        ClassLoader classLoader2 = classLoader1.getParent();        System.out.println(classLoader2);//没有办法直接获取到,null        ClassLoader classLoader3 = String.class.getClassLoader();        System.out.println(classLoader3);//null,说明String是由引导类加载器加载的    }    /*    Properties:用来读取配置文件。     */    @Test    public void test2() throws IOException {        Properties pros = new Properties();        //此时的文件默认在当前的module下。        //读取配置文件的方式一:        FileInputStream fis = new FileInputStream("src\\jdbc1.properties");        pros.load(fis);        //读取配置文件的方式二:使用ClassLoader        //配置文件默认识别为:当前module的src下//        ClassLoader classLoader = ClassLoaderTest.class.getClassLoader();//        InputStream is = classLoader.getResourceAsStream("jdbc1.properties");//        pros.load(is);        String user = pros.getProperty("user");        String password = pros.getProperty("password");        System.out.println(user);        System.out.println(password);    }}