单例模式
来源:互联网 发布:淘宝店铺4.6分 编辑:程序博客网 时间:2024/06/03 13:03
单例模式
单例模式–饿汉试
/* * 单例模式——饿汉试 */class Test{ public static void main(String[] args) { // TODO Auto-generated method stub SingleDemo1 singleDemo1 = SingleDemo1.getInstance(); //这个位置无论创建多少个singleDemo1,都只对应一个内存地址,所以称为饿汉试 }}public class SingleDemo1 { //类加载的时候会立刻创建一个对象,而且私有,所以但饿汉试的单例 private static final SingleDemo1 instance = new SingleDemo1(); //构造器私有化,如果不私有外界想new几个就可以new几个,就失去了单例的意义 private SingleDemo1(){ } public static SingleDemo1 getInstance(){ return instance; }}
单例模式——懒汉式
package com.briup.day19;/* * 单例模式——懒汉式(在使用时才加载,因此称为懒汉式) */class Test2{ public static void main(String[] args) { // TODO Auto-generated method stub SingleDemo1 singleDemo2 = SingleDemo1.getInstance(); }}public class SingleDemo2 { private static SingleDemo2 instance = null; //构造器私有化,如果不私有外界想new几个就可以new几个,就失去了单例的意义 private SingleDemo2(){ } public static SingleDemo2 getInstance(){ if(instance == null){ //在使用时候会才创建一个对象,而且私有,所以但懒汉试的单例 //这种写法属于线程不安全 写法 ,因为等A进到这个位置时没来的急new然后B来了,这样就会 //不过上面加个synchronized修饰就好安全了public static synchronized SingleDemo2 getInstance(){ synchronized (SingleDemo2.class){ if(instance == null){ return instance =new SingleDemo2(); } } //不过这里为了尽量少的在锁里写代码,采用双重检查机制 } return instance; }}
阅读全文
0 0
- 单例、单例模式
- 单例模式-多线程单例模式
- 单件模式(单例模式)
- 设计模式------单例模式
- 设计模式------单例模式
- 设计模式-单例模式
- 设计模式 - 单例模式
- 设计模式---单例模式
- 设计模式---单例模式
- PHP模式-单例模式
- 【设计模式】单例模式
- 设计模式-单例模式
- 设计模式----单例模式
- 设计模式--单例模式
- 设计模式-单例模式
- 单例模式(单子模式)
- 设计模式-单例模式
- [设计模式] 单例模式
- C/C++程序训练6---歌德巴赫猜想的证明
- Spring boot的常用注解
- CURL 用法
- 命名规范
- python 模块和包
- 单例模式
- 鹿晗关晓彤公开恋情,是如何把微博服务器搞炸的? 鹿晗关晓彤公开恋情,是如何把微博服务器搞炸的? 题图:《盗墓笔记》 鹿晗关晓彤公开恋情,是如何把新浪微博的服务器搞垮的? 知友:苏莉安(200+
- 权限控制_shiro_验证流程
- 数组与指针
- 什么是 JWT -- JSON WEB TOKEN
- HTTP协议介绍
- matplotlib中文显示方块问题
- VMware Workstation10下安装CentOS6.5(安装图文教程)
- js内建对象