news 2026/5/22 16:38:58

Java 面向对象 - 触发类的初始化,执行其中的 static 块(包含不会触发初始化的情况)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Java 面向对象 - 触发类的初始化,执行其中的 static 块(包含不会触发初始化的情况)

触发类的初始化,执行其中的 static 块

  1. 访问 static 字段
publicclassSomeClass{static{System.out.println("static block executed");}publicstaticintnum=100;}
intnum=SomeClass.num;
  1. 访问 static 方法,可以使用空方法(推荐)
publicclassSomeClass{static{System.out.println("static block executed");}publicstaticvoidinit(){}}
SomeClass.init();
  1. 创建实例
publicclassSomeClass{static{System.out.println("static block executed");}}
SomeClasssomeClass=newSomeClass();
  1. 使用Class.forName()加载类
try{Class.forName("com.my.SomeClass");}catch(ClassNotFoundExceptione){e.printStackTrace();}

不会触发初始化的情况

  1. 访问.class
publicclassSomeClass{static{System.out.println("static block executed");}}
Class<?>clazz=SomeClass.class;
  1. 访问编译期常量(static final 基本类型或 static final String)
publicclassSomeClass{static{System.out.println("static block executed");}publicstaticfinalintnum=100;publicstaticfinalStringstr="hello world";}
intnum=SomeClass.num;Stringstr=SomeClass.str;
  • 访问非编译期常量,可以触发类的初始化
publicclassSomeClass{static{System.out.println("static block executed");}publicstaticfinalObjecttoken=newObject();}
Objecttoken=SomeClass.token;
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/22 16:38:22

Mermaid Live Editor:5分钟掌握免费在线图表编辑的完整指南

Mermaid Live Editor&#xff1a;5分钟掌握免费在线图表编辑的完整指南 【免费下载链接】mermaid-live-editor Edit, preview and share mermaid charts/diagrams. New implementation of the live editor. 项目地址: https://gitcode.com/GitHub_Trending/me/mermaid-live-e…

作者头像 李华
网站建设 2026/5/22 16:31:06

防锈剂消耗机理、加工量 - 浓度关联参数与 DX320 管控实测研究

一、防锈剂消耗核心机理主消耗途径&#xff1a;工件物理带走&#xff08;化学吸附成膜后脱离槽液&#xff09;&#xff0c;占比 70%-80%&#xff1b;次消耗途径&#xff1a;切屑 / 油污污染、水分蒸发、微量化学降解&#xff1b;DX320 特性&#xff1a;抗水解、抗硬水、抗细菌降…

作者头像 李华
网站建设 2026/5/22 16:29:01

520 - 如何说晚安 (WPF)

黑夜&#xff0c;总是给人以无限浪漫的遐想&#xff0c;那深邃的夜空充满了神秘的浪漫&#xff1b;黑夜&#xff0c;让思考更自由&#xff0c;更安静。如何用程序员的思维来传达爱的感觉呢&#xff1f;首先需要定义想要传达的预期&#xff0c;希望对方看到后的感觉是怎样的&…

作者头像 李华
网站建设 2026/5/22 16:27:24

通过Hermes Agent工具连接Taotoken的自定义提供商配置指南

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 通过Hermes Agent工具连接Taotoken的自定义提供商配置指南 1. 准备工作&#xff1a;获取必要的凭证与信息 在开始配置之前&#x…

作者头像 李华
网站建设 2026/5/22 16:26:24

54种样式随心选:Barlow字体如何让设计不再单调?

54种样式随心选&#xff1a;Barlow字体如何让设计不再单调&#xff1f; 【免费下载链接】barlow Barlow: a straight-sided sans-serif superfamily 项目地址: https://gitcode.com/gh_mirrors/ba/barlow 你是否曾为寻找一款既能满足品牌需求&#xff0c;又能在各种场景…

作者头像 李华