21xrx.com
2024-09-19 09:38:49 Thursday
登录
文章检索 我的文章 写文章
如何让Java代码只执行一次
2023-06-15 20:45:49 深夜i     --     --
Java代码 只执行一次 静态块 懒汉式单例 枚举类型

在编程的过程中,我们经常会遇到写一些只需要在程序执行过程中执行一次的代码,比如初始化一些全局变量或是加载一些配置文件等等。而如何让这些代码只执行一次呢?下面就给大家介绍一下如何实现。

一、静态块

使用静态块可以让代码只执行一次,因为静态块只会在类加载时执行一次。例如:


public class OnlyRunOnce {

  static

    // 需要执行的代码

  

}

二、懒汉式单例

单例模式是一种经典的设计模式,可以保证在程序运行过程中只有一个实例存在。而懒汉式单例中,可以使用静态内部类的方式实现单例,并且在内部类中通过静态块的方式初始化实例,这样可以保证只有在第一次调用getInstance()方法时才会执行一次初始化代码。例如:


public class OnlyRunOnce {

  private OnlyRunOnce() {}

  private static class SingletonHandler{

    private static OnlyRunOnce instance = new OnlyRunOnce();

  }

  public static OnlyRunOnce getInstance()

    return SingletonHandler.instance;

  

}

三、枚举类型

在Java中,枚举类型是线程安全且只会被初始化一次的,因此可以使用枚举类型来保证代码只执行一次。例如:


public enum OnlyRunOnce {

  INSTANCE;

  static

    // 需要执行的代码

  

}

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复