JVM常见加载顺序

简介: 本示例展示了Java中各类代码块的执行顺序:静态代码块随类加载执行,仅一次;局部代码块在方法内按顺序执行;构造代码块每次创建对象前执行;构造器随后执行。输出顺序体现:静态 > 局部 > 构造。

public class CodeBlockDemo
{
{
System.out.println("初始化代码");
}

CodeBlockDemo()
{
    System.out.println("构造器");
}   

static
{
    System.out.println("静态代码块");
}

//运行后输出结果?
public static void main(String[] args) 
{   
    {
        int a = 10;
        //10
        System.out.println("局部代码块");
    }

    new CodeBlockDemo();
    new CodeBlockDemo();
    new CodeBlockDemo();
}

}
输出:
Java
运行代码
复制代码
1
2
3
4
5
6
7
8
9
10
11
静态代码块
局部代码块

初始化代码
构造器

初始化代码
构造器

初始化代码
构造器
总结:
静态代码块 > 局部(构造)代码块 > 构造器(构造方法)
随着类的加载而执行,而且只一次, 优先于主函数执行

相关文章
|
8月前
|
人工智能 自然语言处理 搜索推荐
|
2月前
|
人工智能 API 开发工具
百炼AI模型API调用计费指南:按量、TokenPlan、CodingPlan计费逻辑与工具接入
阿里云百炼是AI大模型服务平台,免费提供千万级Tokens。支持三种计费方式:按量付费(依Token用量计费)、Token Plan(按Credits订阅)、Coding Plan(按调用次数限量抢购)。开通后可获取API Key,接入Cursor、Qwen Code、Claude Code等数十款主流AI工具。在阿里云百炼官网:https://t.aliyun.com/U/fPVHqY 免费领取千万Tokens
388 0
|
2月前
|
编解码 人工智能 自然语言处理
阿里云图片生成与编辑模型解析:适合文生图、图片编辑等场景
本文介绍了阿里云百炼平台的AI图像生成与编辑模型体系,针对海报设计、品牌素材、批量写实图产出等主流业务场景,系统梳理全系列模型的能力边界与选型逻辑。文章提供Midjourney、FLUX.2等主流闭源图像模型向百炼生态平滑迁移的对位对照表,拆解文生图、精细修图、品牌色管控、角色一致性生成等核心能力的适配方案,汇总Wan、Qwen Image、Z-Image三大系列的详细参数矩阵,最终给出分场景的精准选型建议,帮助开发者根据质量、速度、成本的不同优先级,灵活组合模型实现业务效果与投入的最优平衡。
|
12月前
|
监控 安全 数据安全/隐私保护
泄密事件高发频发,DLP/EDR/VDI等传统安全手段失效了吗?
近期台积电、华为等企业频发员工手机偷拍泄密事件,暴露传统DLP、EDR等安全体系在应对屏幕拍照泄露时的盲区。尽管部署多重防护,仍难阻“人”的主动泄密。新型“电-光-电”跨媒介隐形水印技术应运而生,通过无感嵌入、精准溯源,有效震慑内部泄密行为。该技术可与DLP、EDR协同,补齐“最后一公里”防护短板,构建事前预防、事中控制、事后溯源的纵深防御体系。安全无银弹,唯有传统手段与创新科技联动,方能筑牢数据防线。
550 26
|
6月前
|
存储 弹性计算 安全
阿里云99元和199元云服务器怎么买更划算?最新专属组合套餐配置与价格参考
阿里云99元(e实例,2核2G/3M/40G)和199元(u1实例,2核4G/5M/80G)云服务器是个人开发者与中小企业的高性价比之选,活动截止2027年3月31日,新购续费同价。最优选购策略是搭配组合套餐:加99元可解锁弹性数据库(ECS+RDS 198元起)或高效存储(ECS+OSS 217.99元起);建站用户可选域名+ECS+建站礼包(460元起)或域名+ECS+SSL证书(525元起),建议通过选购组合套餐形式,一站式采购,实现省心降本。
|
11月前
|
Java Maven Spring
SpringBoot打包
本项目通过Maven打包为单一可执行JAR,内置配置文件与依赖,使用Spring Boot插件指定主类并repackage。执行`mvn clean package`构建后,通过`java -jar`运行(前台/后台),`kill -9 pid`停止服务。也可将JAR、依赖与配置分离部署,提升灵活性与维护性。(238字)
|
12月前
|
JavaScript 前端开发 算法
前后端全栈技术栈深度剖析:从Vue到Node.js的完整学习路径
三年前端困于API调用?本文系统梳理进阶路径:深入Vue/React原理、掌握Node.js全栈开发、攻克工程化与性能优化,结合实战项目全面提升技术深度,助力突破瓶颈,直通大厂面试核心要求。
|
11月前
|
Web App开发 前端开发 JavaScript
SpringBoot跨域处理
本文介绍了跨域(CORS)的产生原因及解决方案。当协议、域名、端口任一不同,即为跨域。浏览器因同源策略限制,默认阻止跨域请求。通过@CrossOrigin注解、全局配置WebMvcConfigurer或自定义Filter添加响应头,可实现跨域资源共享,允许指定外域访问资源,解决前端请求被阻问题。
|
11月前
|
SQL 存储 NoSQL
简述关系型与非关系型数据库的区别
关系型数据库基于表结构,支持SQL和事务,易于维护但读写性能差、灵活性不足;非关系型数据库格式灵活、速度快、成本低,适用于高并发场景,但缺乏SQL支持与事务机制,复杂查询较弱。
|
11月前
|
存储 缓存 Java
SpringBoot自动装配机制
本章深入解析SpringBoot自动装配机制,从@SpringBootApplication注解入手,剖析其组合注解原理。重点讲解@EnableAutoConfiguration如何通过@AutoConfigurationPackage实现包扫描、通过AutoConfigurationImportSelector加载spring.factories中的自动配置类,结合@Conditional条件注解实现智能化配置。同时解析@ComponentScan组件过滤机制及自定义排除方式,揭示SpringBoot“约定优于配置”的底层实现逻辑。(238字)