博客专栏  >  编程语言   >  Java单例深思

Java单例深思

Java中单例模式有多种实现方式,深入思考每种单例模式实现出现的原因,以单例模式实现作为出发点,介绍诸如Java 类加载机制、JVM内存模型、序列化与反序列化、枚举、线程安全等知识点。

关注
0 已关注
7篇博文
  • 【单例深思】枚举实现单例原理

    单例的枚举实现在《Effective Java》中有提到,因为其功能完整、使用简洁、无偿地提供了序列化机制、在面对复杂的序列化或者反射攻击时仍然可以绝对防止多次实例化等优点,单元素的枚举类型被作者认为...

    2017-04-26 20:49
    422
  • 【单例深思】单例与序列化

    在前面的文章中提到,序列化会破坏单例模式,下面用静态内部类的实现方式,说明序列化对单例的影响: public class Singleton implements Serializabl...

    2017-04-25 17:21
    313
  • 【单例深思】静态内部类实现详解

    静态内部类实现是我个人比较推荐的,其实现如下: public class Singleton {     private static class SingletonHolder {      ...

    2017-04-12 17:28
    175
  • 【单例深思】双重检测锁与Java内存模型

    双重检测锁 使用粒度较小的锁(缩小锁的范围)解决了 懒汉式改进版 中存在的性能问题,以提高并发量。 双重检测锁实现如下: public class Singleton {       ...

    2017-04-12 16:11
    129
  • 【单例深思】Java 单例模式全解

    什么是单例模式? 单例模式 是一种对象创建模式,它用于产生一个对象的具体实例,它可以确保系统中一个类只产生一个实例,并提供一个访问它的全局访问点。 单例模式的用途? 用于创建只需要一个实...

    2017-04-07 17:05
    250
  • 【单例深思】饿汉式与类加载

    我们知道饿汉式的实现是线程安全的,没有延迟加载(Lazy Loading),下面我们深入研究下为什么。 饿汉式的实现如下: public class Singleton {     priv...

    2017-04-08 15:10
    225
  • 【单例深思】懒汉式改进版与内置锁

    我们知道懒汉式的实现是延迟加载(Lazy Loading),但是不是线程安全的,下面我们深入研究下为什么。 懒汉式的实现如下: public class S...

    2017-04-08 16:46
    158

img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部