单例模式

Posted one-apple-pie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单例模式相关的知识,希望对你有一定的参考价值。

核心作用:
保证一个类只有一个实例,并且提供一个访问该实例的全局访问点。

常见应用场景:

windows的任务管理器,回收站,网站的计数器,数据库连接池的设计,具体项目中比如读取配置文件的类。

单例模式的优点:

由于单例模式只生成一个实例,可以减少系统性能开销,例如当一个对象的产生需要比较多的资源时,如读取配置,产生其他依赖对象时,则可以通过
在应用启动时直接产生一个单例对象,然后永久驻留内存的方式来解决。

常见的单例模式实现方式:

饿汉式(线程安全,调用效率高。但是,不能延时加载)
懒汉式(线程安全,调用效率不高。但是,可以延时加载)

静态内部类式(线程安全,调用效率高。但是,可以延时加载)
枚举单例(线程安全,调用效率高,不能延时加载)

实现饿汉式懒汉式的注意点:

提供一个public的获取实例的方法(全局访问点)

私有化构造器





以上是关于单例模式的主要内容,如果未能解决你的问题,请参考以下文章

单例模式(单例设计模式)详解

Java模式设计之单例模式(二)

单例模式(饿汉式单例模式与懒汉式单例模式)

单例模式

单例模式

设计模式之单例模式