系列二、类装载器ClassLoader

一、能干嘛

1.1、方法区

存放类的描述信息的地方。

1.2、JVM中的类装载器

1.3、获取ClassLoader的方式

java 复制代码
/**
 * @Author : 一叶浮萍归大海
 * @Date: 2023/11/16 0:08
 * @Description: 获取类的加载器的方式
 */
public class ClassLoaderMainApp {

    public static void main(String[] args) throws ClassNotFoundException {
        // 获取类加载器的第一种方式
        Car car1 = new Car();
        ClassLoader classLoader1 = car1.getClass().getClassLoader();
        System.out.println("获取类加载器的第一种方式:" + classLoader1);

        // 获取类加载器的第二种方式
        ClassLoader classLoader2 = Class.forName("org.star.entity.Car").getClassLoader();
        System.out.println("获取类加载器的第二种方式:" + classLoader2);

        // 获取类加载器的第三种方式
        ClassLoader classLoader3 = Car.class.getClassLoader();
        System.out.println("获取类加载器的第三种方式:" + classLoader3);

        System.out.println("*********************");

        Object obj = new Object();
        System.out.println("Object类的根加载器:" + obj.getClass().getClassLoader());
        System.out.println("自定义类的加载器:" + Car.class.getClassLoader());
        System.out.println("自定义类的加载器(父亲):" + Car.class.getClassLoader().getParent());
        System.out.println("自定义类的加载器(爷爷):" + Car.class.getClassLoader().getParent().getParent());
    }

}
相关推荐
打工人你好13 小时前
如何设计更安全的 VIP 权限体系
java·jvm·安全
unclecss16 小时前
把 Spring Boot 的启动时间从 3 秒打到 30 毫秒,内存砍掉 80%,让 Java 在 Serverless 时代横着走
java·jvm·spring boot·serverless·graalvm
q***25117 小时前
java进阶1——JVM
java·开发语言·jvm
zlpzlpzyd17 小时前
jvm 偏向锁禁用以及移除
jvm
while(1){yan}17 小时前
线程的状态
java·开发语言·jvm
20岁30年经验的码农17 小时前
Java JVM 技术详解
java·jvm·压力测试
1***815317 小时前
C在游戏中的场景管理
java·jvm·游戏
上78将17 小时前
jvm的基本结构
jvm
Tan_Ying_Y18 小时前
JVM内存结构———他的底层完整结构
jvm
张人玉18 小时前
SQLite语法知识和使用实例
jvm·oracle·sqlite