深入解析Java类加载与实例化流程

目录

一、类加载(方法区](https://blog.csdn.net/2401_86112610/article/details/147521881?spm=1001.2014.3001.5502 ")")

1.父类静态初始化

2.子类静态初始化

二、实例化(堆)

1.赋零值

2.构造初始化

2.1父类构造初始化

2.2子类构造初始化


一、类加载(方法区)

首次被使用时 只一次静态加载

1.父类静态初始化

(父类)静态变量赋零值 + 静态变量就地初始化 + 静态代码块

2.子类静态初始化

(子类)静态变量赋零值 + 静态变量就地初始化 + 静态代码块


二、实例化(堆)

每次创建对象时 对实例的加载

1.赋零值

++父子所有++实例变量 赋零值

2.构造初始化

2.1父类构造初始化

【先:子类构造方法++第一行的super()++ 转先去执行 上一层父类构造方法】

(父类)实例变量就地初始化 + 实例代码块 + 构造方法体

2.2子类构造初始化

【后:回到子类构造方法

(子类)实例变量就地初始化 + 实例代码块 + 构造方法体

相关推荐
源代码•宸1 分钟前
Leetcode—712. 两个字符串的最小ASCII删除和【中等】
开发语言·后端·算法·leetcode·职场和发展·golang·dp
小当家.1052 分钟前
JVM八股详解(上部):核心原理与内存管理
java·jvm·学习·面试
heartbeat..3 分钟前
Spring 声明式事务:原理、使用及失效场景详解
java·spring·面试·事务
无风听海3 分钟前
C# 中对象相等性判断的全面解析
开发语言·c#
寻星探路3 分钟前
【Python 全栈测开之路】Python 基础语法精讲(三):函数、容器类型与文件处理
java·开发语言·c++·人工智能·python·ai·c#
逑之4 分钟前
C语言笔记8:操作符
c语言·开发语言·笔记
xiaolyuh1235 分钟前
【XXL-JOB】执行器 Netty服务 & Tomcat 进程+资源共用详解
java·tomcat
无限进步_5 分钟前
【C语言&数据结构】相同的树:深入理解二叉树的结构与值比较
c语言·开发语言·数据结构·c++·算法·github·visual studio
jasnet_u8 分钟前
SpringCloudAlibaba的web微服务快速搭建
java·springboot·springlcoud
枫叶丹410 分钟前
【Qt开发】Qt系统(五)-> Qt 多线程
c语言·开发语言·c++·qt