码迷,mamicode.com
首页 > 编程语言 > 详细

关于java写一个单例类(面试手写题)

时间:2018-11-03 02:15:18      阅读:310      评论:0      收藏:0      [点我收藏+]

标签:不为   java   author   on()   实例   ack   类变量   void   简单   

package com.shundong.javacore;
/**
 * java写一个简单的单例类
 * @author shundong
 *
 */
class Singleton 
{
	//使用一个类变量来缓存曾经创建的实例
	private static Singleton instance;
	//对构造进行隐藏(private)
	private Singleton(){}
	/**
	 * 提供一个静态方法 
	 * 该方法加入了自定义控制 保证只产生一个Singleton对象
	 * @return 返回Singleton 实例
	 */
	public static Singleton getInstance()
	{
		/**
		 * 如果instance为null,表示还不曾创建Singleton对象 
		 * 如果instance不为null,表示已经创建Singleton对象 
		 */
		if(instance==null) {
			//创建Singleton对象 并将其缓存
			instance = new Singleton();
		}
		return instance;
	}
}
	//for test
	public class SingletonTest
	{
		public static void main(String[] args) 
		{
			//创建实例不能通过构造!!!
			//必须通过getInstance !!!单例 o了
			Singleton aSingleton1 = Singleton.getInstance();
			Singleton aSingleton2 = Singleton.getInstance();
			System.out.println(aSingleton1==aSingleton2);
		}
	}

  最近面试发现是该好好整理一下了 想到了有一次面试叫我手写一个 单例模式 就又写了一遍

关于java写一个单例类(面试手写题)

标签:不为   java   author   on()   实例   ack   类变量   void   简单   

原文地址:https://www.cnblogs.com/shundong106/p/9899039.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!