java中的static{}块的实例详解

yizhihongxing

Java中的static{}块的实例详解

概述

在Java中,可以使用static关键字定义的静态代码块static {},这个静态代码块在类被加载时执行,且只执行一次。可以用于在类加载时进行一些必要的初始化操作等。

示例说明一

public class StaticTest {
    static {
        System.out.println("静态代码块执行了");
    }
    public StaticTest() {
        System.out.println("构造函数执行了");
    }
    public static void main(String[] args) {
        new StaticTest();
    }
}

输出结果:

静态代码块执行了
构造函数执行了

解析:在main方法中调用了new StaticTest(),此时由于该类还未被实例化,所以首先执行了静态代码块,输出了“静态代码块执行了”,然后才执行了构造函数,输出了“构造函数执行了”。

示例说明二

public class StaticTest {
    static {
        System.out.println("静态代码块一执行了");
    }
    static {
        System.out.println("静态代码块二执行了");
    }
    static {
        System.out.println("静态代码块三执行了");
    }
    public StaticTest() {
        System.out.println("构造函数执行了");
    }
    public static void main(String[] args) {
        new StaticTest();
    }
}

输出结果:

静态代码块一执行了
静态代码块二执行了
静态代码块三执行了
构造函数执行了

解析:在类被加载时,同时执行了三个静态代码块,依次输出了“静态代码块一执行了”、“静态代码块二执行了”、“静态代码块三执行了”,然后才执行构造函数,输出了“构造函数执行了”。

总结

  • static关键字可以用于定义静态代码块,该代码块在类被加载时只会执行一次。
  • 静态代码块可以用于在类加载时进行一些必要的初始化操作等,比如读取配置文件。
  • 如果存在多个静态代码块,它们会按定义的顺序依次执行。
  • 静态代码块中的变量必须为静态变量。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java中的static{}块的实例详解 - Python技术站

(0)
上一篇 2023年5月23日
下一篇 2023年5月23日

相关文章

  • jsp+ajax实现的局部刷新较验验证码(onblur事件触发较验)

    当用户在web应用程序中填写表单并提交时,验证码是必不可少的一部分,以防止自动化攻击或恶意行为。在这种情况下,我们可以使用JSP和AJAX来实现验证码的部分刷新。 实现验证码的部分刷新的关键是使用AJAX发送HTTP请求并触发JSP页面的代码块。该代码块将生成验证码并返回到AJAX调用。验证码可以用图像格式显示在JSP页面上或使用JavaScript或CSS…

    Java 2023年6月15日
    00
  • Java中getResourceAsStream用法分析

    Java中getResourceAsStream用法分析 前言 在Java开发中,我们常常会涉及到读取不同路径下的资源文件,例如配置文件、图片等。而getResourceAsStream是常用的用于读取资源文件的方法,这篇文章就给大家介绍一下getResourceAsStream的作用和使用方法。 getResourceAsStream方法简介 getRes…

    Java 2023年6月15日
    00
  • SpringBoot用JdbcTemplates操作Mysql实例代码详解

    下面我将详细讲解“SpringBoot用JdbcTemplates操作Mysql实例代码详解”的完整攻略,包括示例说明。 介绍 Spring Boot是一个快速搭建基于Spring框架的应用程序的开发框架。它简化了许多开发任务,使得开发人员可以快速构建并启动应用程序。在Spring Boot中,JDBC是一种常用的访问关系数据库的方法。当使用Spring B…

    Java 2023年5月20日
    00
  • SpringBoot Application注解原理及代码详解

    SpringBootApplication注解原理及代码详解 1. Spring Boot介绍 ​ Spring Boot是一个应用于快速创建基于Spring框架的应用程序的工具。它大大简化了Spring应用程序的搭建和开发流程, 十分适合用于微服务开发等快速迭代的场景。 2. SpringBootApplication注解 ​ SpringBootAppl…

    Java 2023年5月15日
    00
  • spring-boot项目启动迟缓异常排查解决记录

    首先,需要介绍一下 Spring Boot 项目启动的流程。当 Spring Boot 应用启动时,它会加载并解析所有的依赖包和配置文件,然后创建和初始化 Spring ApplicationContext,最后启动嵌入式的 Web 服务器,等待处理 HTTP 请求。 如果 Spring Boot 项目启动缓慢,可以考虑以下几个方面进行排查: 1. 依赖包冲…

    Java 2023年5月27日
    00
  • Java中使用JavaScript脚本的方法步骤

    在Java中使用JavaScript脚本的方法步骤大致如下: 导入JavaScript引擎 Java 8及以后版本使用Nashorn引擎(已废弃): “`java import javax.script.ScriptEngineManager; import javax.script.ScriptEngine; ScriptEngineManager fa…

    Java 2023年5月26日
    00
  • Java实现有限状态机的推荐方案分享

    Java 实现有限状态机的推荐方案分享 有限状态机(Finite State Machine,FSM)是一种计算模型,它可以使用有限个状态和它们之间的转移,来描述一个系统在不同状态下的行为。在软件开发中,常常需要使用有限状态机来解决复杂问题,比如网络协议解析、报文处理、游戏逻辑等。 本文将介绍 Java 实现有限状态机的一些推荐方案,并提供了两条示例说明,供…

    Java 2023年5月26日
    00
  • spring mvc DispatcherServlet之前端控制器架构详解

    Spring MVC DispatcherServlet之前端控制器架构详解 在Spring MVC中,DispatcherServlet是一个核心组件,它是前端控制器模式的实现。本文将详细介绍Spring MVC DispatcherServlet之前端控制器架构的实现原理和实现过程,并提供两个示例说明。 前端控制器架构的实现原理 前端控制器架构的实现原理…

    Java 2023年5月17日
    00
合作推广
合作推广
分享本页
返回顶部