关闭

Singleton 三种实现方式

标签: javasingletonenum
56人阅读 评论(0) 收藏 举报
分类:

注:这是只是对自己所学知识的一个总结,记录,随着之后的学习会对内容有所修改

提到 Singleton,相信第一想到的就是私有构造器。首先这样的想法是没有错误的。在 java 1.5 版本之前 Singleton 有两种写法,在 java 1.5 之后加入了许多特性,其中Enum 枚举类型的加入为 Singleton 提供了最佳的实现方式。此处借鉴自 Effective java(第二版)。


一、对外抛出公有的静态变量

public class Singleton {

    // the method one to singleton
    public static final Singleton INSTANCE = new Singleton();

    private Singleton() {

    }

}


二、对外抛出公有的静态方法

public class Singleton {

    // the method two to singleton
    private static final Singleton INSTANCE = new Singleton();

    private Singleton() {

    }

    public static Singleton getInstance() {
        return INSTANCE;
    }

}


三、使用 Enum 枚举来实现 Singleton
public enum Singleton{

    INSTANCE;

    public void leaveTheBuilding() {

    }

}


0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

servlet的三种实现方式

servlet基础
  • changej
  • changej
  • 2015-11-01 23:00
  • 2028

Spring AOP的三种实现方式

原文地址:http://blog.csdn.net/udbnny/article/details/5870076 三种方式分别为: 经典的基于代理的AOP @AspectJ注解的切面 ...
  • yu8196378
  • yu8196378
  • 2016-12-21 16:51
  • 1406

三种web会话管理的方式

HTTP是无状态的,一次请求结束,连接断开,下次服务器再收到请求,它就不知道这个请求是哪个用户发过来的。当然它知道是哪个客户端地址发过来的,但是对于我们的应用来说,我们是靠用户来管理,而不是靠客户端。...
  • Apeopl
  • Apeopl
  • 2017-01-10 15:06
  • 457

Struts2总结---实现Action三种方式(2)

Struts2的核心功能是action,对于开发人员来说,使用Struts2主要就是编写action,action类通常都要实现com.opensymphony.xwork2.Action接口,并实现...
  • helongzhong
  • helongzhong
  • 2017-03-03 16:36
  • 959

Java中线程的三种实现方式

Java中使用Thread代表线程类,所有的线程类都必须是Thread类或者其子类的实例。每个线程的作用就是完成一定的任务,即执行一段程序流。Java中使用线程执行体来表示这段程序流。 Java中...
  • FFFLLLLLL
  • FFFLLLLLL
  • 2016-08-21 22:39
  • 1753

每天一题(48) - C++实现Singleton模式

饿汉模式 代码(1) //.h文件 class Singleton { public: static Singleton& GetInstance(); private: Singleton(){...
  • insistGoGo
  • insistGoGo
  • 2013-07-22 19:37
  • 3382

依赖注入的三种实现形式

什么是控制反转/依赖注入? 控制反转(IoC=Inversion of Control)IoC,用白话来讲,就是由容器控制程序之间的(依赖)关系,而非传统实现中,由程序代码直接操控。这也就是所谓“控...
  • zhang1206214477
  • zhang1206214477
  • 2015-06-21 00:14
  • 5546

依赖注入的三种方式

依赖注入:为IOC别名,依赖注入是IOC的实现方式,IOC本质是将对象的创建由程序转移到容器,依赖注入为实现这一目标的方式。(1)构造方法注入:即被注入对象可以通过在其构造方法中声明依赖对象的参数列表...
  • iycynna_123
  • iycynna_123
  • 2016-09-02 15:07
  • 1201

Java Servlet实现的三种方式

ServletServlet是在服务器上运行的小程序。一个Servlet就是一个Java类,并且可以通过“请求-响应”编程模型来访问的这个驻留在服务器内存里的Servlet程序。Tomcat容器等级T...
  • zhiaini06
  • zhiaini06
  • 2016-10-04 14:20
  • 4522

mybatis查询主要有三种方式实现

mybatis查询主要有三种方式实现: 方式一:    select * from table_name where 1=1             ...
  • qq846452787
  • qq846452787
  • 2016-05-18 15:11
  • 1405
    个人资料
    • 访问:57次
    • 积分:10
    • 等级:
    • 排名:千里之外
    • 原创:1篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档
    阅读排行