2.软文推荐
3.软文推荐
摘要:单例模式是java中常用的一种设计模式,本文将从四个方面介绍java单例模式有哪些,包括饿汉式、懒汉式、双重校验锁和静态内部类。
图片
一、饿汉式
饿汉式是在类加载的时候就已经创建好了实例,以空间换时间的做法。
其中最简单的一种实现方式就是将构造器私有化,然后提供一个静态的实例化对象方法,这个方法总是返回同一个实例。
二、懒汉式
懒汉式是在需要时才创建实例,以时间换空间的方式。
单例模式最常见的方法就是懒汉式,本质上还是在饿汉式的基础上进一步优化。
三、双重校验锁
双重校验锁(Double-check Locking)是在懒汉式的基础上进一步优化,通过加锁来保证线程安全。
具体做法是在实例化方法中加入两个if语句,在第一个if语句外面再加一层synchronized关键字,这同时也是一种优化代码效率的手段。
四、静态内部类
静态内部类是一种优雅地方式,既不依赖JDK版本,也不受JVM保护,而且线程安全,这也是推荐使用的方式。
内部类在实例化时,会先判断该实例是否已经存在,若不存在才会执行实例化操作,这就保证了线程安全。

立即
返回
1
CentOS 7视频转码":高效处理海量视频数据的利器 摘要:视频转码是处理海量视频数据的一项重要工作,CentOS 7作为一款流行的开源操作系统...