JAVA三种实现单例模式方法(二):使用静态内部类实现单例设计模式

原创 2018年04月17日 18:47:45
package instance.innerClass;
public class InstanceInnerClass {
	
	private String str;
	private Long currentTime;
	
	private static class InnerClass {
		private static final InstanceInnerClass instance = new InstanceInnerClass();
	}
	
	public static InstanceInnerClass getInstance() {
		return InnerClass.instance;
	}
	
	private InstanceInnerClass() {
		initProperties();
	}
	
	private void initProperties() {
		this.str = "hello world!";
		this.currentTime = System.currentTimeMillis();
	}
	
	public void print() {
		System.out.println("time:" + currentTime + " >>> " + str );
	}

	public static void main (String[] args) {
		for (int i = 0; i < 3; i++) {
			new Thread( new Runnable() {
				@Override
				public void run() {
					InstanceInnerClass instance = InstanceInnerClass.getInstance();
					System.out.println("hashCode:" + instance.hashCode());
					instance.print();
				}
			}).start();
		}
	}
}
测试结果:
hashCode:118352462
time:1523962160109 >>> hello world!
hashCode:118352462
time:1523962160109 >>> hello world!
hashCode:118352462
time:1523962160109 >>> hello world!

其他:使用静态内部类实现单例设计模式http://www.cnblogs.com/zeng1994/p/7397637.html

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jingzi123456789/article/details/79979003

单例模式---懒汉与饿汉模式和静态内部类实现

单例模式是最基本的 java 设计模式之一 主要有两种设计方法,主要分为饿汉式与懒汉式饿汉式比较简单,直接使用常量即可,主要代码如下: private static final SingleM...
  • jslcylcy
  • jslcylcy
  • 2017-05-25 11:44:26
  • 638

使用静态内部类实现延迟加载单例模式

所谓单例模式,简单来说,就是在整个应用中保证只有一个类的实例存在。就像是Java Web中的application,也就是提供了一个全局变量。单例模式确保某一个类只有一个实例,而且自行实例化并向整个系...
  • a564663276
  • a564663276
  • 2017-02-24 16:26:53
  • 3940

android设计模式之---最佳单例模式==静态内部类单例模式

/***  * 一、作用,  * 1、保证单例对象的唯一性;  * 2、延迟单例的实例化  * 3、确保了线程安全  *   * 二、第一次加载Application时不会初始化minner,当调用A...
  • qq_21542513
  • qq_21542513
  • 2016-03-04 23:45:44
  • 549

使用静态内部类实现单例模式

代码如下: /** * Created on 2017/5/5. * Author:crs * Description:使用静态内部类的方式实现单例模式 */ public class Sin...
  • chenrushui
  • chenrushui
  • 2017-05-05 10:20:06
  • 1515

java 常见的单例模式,推荐静态内部类

解法一:只适合单线程环境(不好) package test; /** * @author xiaoping * */ public class Singleton { private s...
  • a303549861
  • a303549861
  • 2016-11-03 23:52:28
  • 4552

Java单例模式——静态内部类实现

Singleton是众多设计模式中最容易理解的一种,也是众多设计模式中较为重要的一种设计模式。 Singleton模式实现的重点在于将构造函数私有化(private),并通过提供静态公有函数(publ...
  • d6619309
  • d6619309
  • 2014-08-18 09:38:09
  • 9611

【单例深思】静态内部类实现详解

静态内部类实现是我个人比较推荐的,其实现如下: public class Singleton {     private static class SingletonHolder {      ...
  • Insert_day
  • Insert_day
  • 2017-04-12 17:28:26
  • 445

单例模式静态内部类实现线程安全。

静态内部类 线程安全 单例模式
  • JQ_AK47
  • JQ_AK47
  • 2016-06-07 15:37:58
  • 3404

单例模式的八种写法比较、枚举实现的好处、静态内部类实现单例原理

目录 简介 基本的实现思路 注意事项 单例模式的八种写法 1、饿汉式(静态常量)[可用] 2、饿汉式(静态代码块)[可用] 3、懒汉式(线程不安全)[不可用] 4、懒汉式(线程安全,同步方法...
  • a_long_
  • a_long_
  • 2016-04-13 10:49:53
  • 3345

设计模式——单例模式的几种实现方式

1.饿汉式:静态常量 这种方法非常的简单,因为单例的实例被声明成static和final变量了,在第一次加载类到内存中时就会初始化,所以会创建实例本身是线程安全的。public class Singl...
  • bingogirl
  • bingogirl
  • 2016-09-01 00:03:25
  • 2057
收藏助手
不良信息举报
您举报文章:JAVA三种实现单例模式方法(二):使用静态内部类实现单例设计模式
举报原因:
原因补充:

(最多只允许输入30个字)