单例设计模式Singleton之懒加载模式(懒汉模式)【原】
单例设计模式Singleton之懒加载模式(懒汉模式)
SingletonLazy.java类
package kingtool;
import kingtool.http.IPTool;
public class SingletonLazy {
// 懒汉式单例模式
// 比较懒,在类加载时,不创建实例,因此类加载速度快,但运行时获取对象的速度慢(第一次)
private static SingletonLazy intance = null;// 静态私用成员,没有初始化
private String currentIp = "";
private SingletonLazy() {//所有加载一次的其它类代码都放在这里
currentIp = IPTool.judgeIP();//其它代码,仅加载一次用
}
public static synchronized SingletonLazy getInstance() // 静态,同步,公开访问点
{
if (intance == null) {
synchronized (SingletonLazy.class) {
if (intance == null) {
intance = new SingletonLazy();
}
}
}
return intance;
}
public String getCurrentIp() {
return currentIp;
}
public static void main(String[] args) {
SingletonLazy single = new SingletonLazy();
single = new SingletonLazy();
single = new SingletonLazy();
single = new SingletonLazy();
single.getCurrentIp();
}
}
单例设计模式Singleton之懒加载模式(懒汉模式)【原】的更多相关文章
- 单例设计模式singleton
简单引入 单例设计模式作为最简单,最常用的设计模式.一般是这两中写法,这两种写法教科书所谓的标准写法,但是实际上存在不少问题.后面介绍标准写法,以规避这些问题. 1.懒汉式: /** * 问题在于,当 ...
- Java设计模式—单例设计模式(Singleton Pattern)全然解析
转载请注明出处:http://blog.csdn.net/dmk877/article/details/50311791 相信大家都知道设计模式,听的最多的也应该是单例设计模式,这种模式也是在开发中用 ...
- Java学习笔记——单例设计模式Singleton
单例设计模式:singleton 解决的问题: 确保程序在运行过程中,某个类的实例instance只有一份. 特点: 1 构造函数私有化 2 自己内部声明自己 3 提供一个public方法,负责实例化 ...
- Java学习笔记(二十四):单例设计模式singleton
为什么要使用singleton设计模式? 假设设计了一个操作数组的工具类(Tools),里面有一个锤子的方法(Hammer),如果不使用singleton设计模式,每次想调用Hammer方法都需要ne ...
- 【Hibernate 懒加载】debug模式懒加载获取空数据
<many-to-one name="department" class="k.domain.Department" column="depar ...
- Spring5.0源码学习系列之浅谈懒加载机制原理
前言介绍 附录:Spring源码学习专栏 在上一章的学习中,我们对Bean的创建有了一个粗略的了解,接着本文挑一个比较重要的知识点Bean的懒加载进行学习 1.什么是懒加载? 懒加载(Lazy-ini ...
- 【Spring注解驱动开发】使用@Lazy注解实现懒加载
写在前面 Spring在启动时,默认会将单实例bean进行实例化,并加载到Spring容器中.也就是说,单实例bean默认在Spring容器启动的时候创建对象,并将对象加载到Spring容器中.如果我 ...
- 转:java单例设计模式
本文转自:http://www.cnblogs.com/yinxiaoqiexuxing/p/5605338.html 单例设计模式 Singleton是一种创建型模式,指某个类采用Singleton ...
- Java 单例(Singleton)模式
一.什么是单例模式: 单例模式是一种确保了一个类只有一个实例,而且自行实例化并向整个系统提供这个实例.被实例化的类称为单例类. 二.单例模式的特点: 单例类只有一个实例. 单例类必须自行创建自己唯一的 ...
随机推荐
- Undertow的InMemorySessionManager
https://github.com/undertow-io/undertow/blob/master/core/src/main/java/io/undertow/server/session/In ...
- 请求与响应编码及jsp基本原理
1.请求转发和请求包含 (1)请求转发: this.getServletContext().getRequestDispatcher("").forward(request,res ...
- js條件結構和循環結構
條件結構: if(語句1) if(語句1)else(語句2) if(語句1)elseif(語句2)else(語句3) switch結構: switch() { case 1: break: case ...
- Lodop打印语句最基本结构介绍(什么是一个任务)
Lodop中最基本的打印过程至少有初始化语句.添内容语句和打印语句三部分组成,例如: LODOP.PRINT_INIT("打印任务名"); //首先一个初始化语句 LODOP.AD ...
- asp.net 后台<%@ Page%> page指令属性
aspx文件有如下一行代码: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind=" ...
- mysql关于binlog日志的操作
查看binlog日志选项和存储位置: mysql> show variables like 'log_%'; 1.查看所有binlog日志列表 mysql> show master log ...
- BZOJ1069 SCOI2007最大土地面积(凸包+旋转卡壳)
求出凸包,显然四个点在凸包上.考虑枚举某点,再移动另一点作为对角线,容易发现剩下两点的最优位置是单调的.过程类似旋转卡壳. #include<iostream> #include<c ...
- Dapper 介绍
转载:http://***/html/itweb/20130918/125194_125199_125210.htm .NET 轻量级 ORM 框架 - Dapper 介绍 Dapper简单介绍: D ...
- String类型的特殊之处
String是一种特殊的引用类型,那么它究竟特殊在哪里? 请看看下面这个程序,输出什么结果? public static void changeStr(String str) { str = &quo ...
- 20 Zabbix 利用Scripts栏目对Hosts远程执行命令
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 20 Zabbix 利用Scripts栏目对Hosts远程执行命令 在Monitoring板块中, ...