类加载机制

本文介绍了Java虚拟机的类加载机制,包括加载的时机、类加载器的种类和双亲委派模型。详细阐述了主动引用和被动引用的情况,以及类加载的生命周期,如加载、验证、准备、解析和初始化阶段。此外,还讨论了双亲委派模型的工作原理及其作用。
摘要由CSDN通过智能技术生成

一:概述:


创建一个类,在执行这个类时候到底发生了什么,或者说要执行一个类中的方法时候类提前干什?加载类时候会把所有的类都会执行吗?什么情况下会出现类加载的情况?又是谁来执行类加载机制的的?

二:什么情况下会执行类加载(换句话说类加载的时机)?

首先我们得先知道两个引用

1.主动应用   

虚拟机在规范中并没有强制何时规范类加载,但是在以下6种情况下必须执行类加载

  • 当遇到 new getstatic  putstatic invokestatic 这四个工作指令时执行类夹杂机制


* 在JVM执行new指令时,就是一个程序创建一个类的实例对象

* 在JVM执行getstatic指令时,就是程序访问一个静态变量的时候

*在JVM执行 putstatic指令时,就是程序给一个静态变量赋值的时候

*在JVM执行 invokestatic时,就是程序调用静态方法时候


  • 使用Class.forname()或
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值