java类的生命周期介绍
生命周期:类的加载->连接->初始化->使用->卸载。
(推荐教程:java入门教程)
详细介绍:
1、类的加载
查找并加载类的二进制数据(指class文件),通俗的将就是硬盘上的class文件加载到jvm内存中
2、连接: 确定类与类之间的关系;比如person.setAddress(address) 人对象中嵌套一个地址对象
验证:正确性校验
准备:static静态变量分配内存,并赋初始化默认值。
比如static int num=10;
在准备阶段,会吧num=0,之后再将0修改为10。准备阶段只会把num赋值为0,。jvm只有类,没有对象。
初始化顺序:static->非static->构造方法
public class Student{ static int age;//准备阶段,将age=0
String name;
}
加载完类,程序只有学生类,没有学生对象,还没有 Student s=new Student()这句话解析:把类中符号引用,转为直接引用
前期阶段,还不知道类的具体内存地址,只能使用com.pojo.Student来代替student类。
com.pojo.Student就成为符号引用;
在解析阶段,jvm就可以将com.pojo.Student映射程实际的内存地址,之后就用内存地址来代替 Student,这种使用内存地址来使用类的方式就成为直接引用
(视频教程推荐:java视频教程)
3、初始化:
比如static int num=10;
在准备阶段,会吧num=0,之后(初始化阶段之后)再将0修改为10。
4、使用: 对象的初始化,对象的垃圾回收,对象的销毁
5、卸载:
jvm结束生命周期的时机:
正常结束
异常结束、错误
System.exit()
操作系统异常
以上是java类的生命周期介绍的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

Java 8引入了Stream API,提供了一种强大且表达力丰富的处理数据集合的方式。然而,使用Stream时,一个常见问题是:如何从forEach操作中中断或返回? 传统循环允许提前中断或返回,但Stream的forEach方法并不直接支持这种方式。本文将解释原因,并探讨在Stream处理系统中实现提前终止的替代方法。 延伸阅读: Java Stream API改进 理解Stream forEach forEach方法是一个终端操作,它对Stream中的每个元素执行一个操作。它的设计意图是处

Java是热门编程语言,适合初学者和经验丰富的开发者学习。本教程从基础概念出发,逐步深入讲解高级主题。安装Java开发工具包后,可通过创建简单的“Hello,World!”程序实践编程。理解代码后,使用命令提示符编译并运行程序,控制台上将输出“Hello,World!”。学习Java开启了编程之旅,随着掌握程度加深,可创建更复杂的应用程序。
