分两种模式:

1饿汉式:是先初始化对象。

Single类一进内存,就已经创建好了对象。

class Single

{

private static Single s = new Single();

private Single(){}

public static Single getInstance()

{

return s;

}

}

2.对象是方法被调用时,才初始化,也叫做对象的延时加载。成为:懒汉式。

Single类进内存,对象还没有存在,只有调用了getInstance方法时,才建立对象。

class Single

{

private static Single s = null;

private Single(){}

public static Single getInstance()

{

if(s==null)

{

synchronized(Single.class)//锁

{                                //当多个对象被建立时第二个对象会被所在外边不被调用

if(s==null)

s = new Single();

}

}

return s;

}

}

//记录原则:定义单例,建议使用饿汉式。

转载于:https://blog.51cto.com/liuch/1275676

java 的单态模式(只可以创建一个对象)相关推荐

  1. java单态模式_Java单态模式

    Java的单态模式 Singletom 作用:保证在Java应用程序中,一个Java类只有一个实例存在:所以一般单态类会提供一个返回该类实例的方法.提供一个对对象的全局访问指针. 优点:节省内存,限制 ...

  2. java设计模式-建造者模式

    概念:使用多个简单的对象一步一步构建成一个复杂的对象.这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式. 意图:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示. ...

  3. 解析 Java 类和对象的初始化过程 由一个单态模式引出的问题谈起

    在 IBM Bluemix 云平台上开发并部署您的下一个应用. 开始您的试用 问题引入 近日我在调试一个枚举类型的解析器程序,该解析器是将数据库内一万多条枚举代码装载到缓存中,为了实现快速定位枚举代码 ...

  4. java中用new创建一个对象的过程解析

    见 http://zhangjunhd.blog.51cto.com/113473/17124/ 对于用new 创建一个对象,我们需要弄清楚它的过程: 引用和创建一个对象的格式是: 类名 变量名; 变 ...

  5. 按要求编写Java应用程序。 (1)建立一个名叫Cat的类: 属性:姓名、毛色、年龄 行为:显示姓名、喊叫 (2)编写主类: 创建一个对象猫,姓名为“妮妮”,毛色为“灰色”,年龄为2岁,在屏幕上输

    **按要求编写Java应用程序. (1)建立一个名叫Cat的类: 属性:姓名.毛色.年龄 行为:显示姓名.喊叫 (2)编写主类: 创建一个对象猫,姓名为"妮妮",毛色为" ...

  6. Java 责任链模式

    顾名思义,责任链模式(Chain of Responsibility Pattern)为请求创建了一个接收者对象的链.这种模式给予请求的类型,对请求的发送者和接收者进行解耦.这种类型的设计模式属于行为 ...

  7. 10.Java设计模式 工厂模式,单例模式

    Java 之工厂方法和抽象工厂模式 1. 概念 工厂方法:一抽象产品类派生出多个具体产品类:一抽象工厂类派生出多个具体工厂类:每个具体工厂类只能创建一个具体产品类的实例. 即定义一个创建对象的接口(即 ...

  8. java 肌汉模式_设计模式之原型模式详解(附源代码)

    原型模式(Prototype Pattern) 原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能.这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式. ...

  9. Java设计模式----创建者模式

    1.设计模式概述 设计模式不是语法规定,就是提高代码可复用性.可维护性.可读性.稳健性以及安全性的解决方案.是前辈对代码开发经验的总结,解决问题的一系列套路 面向对象设计原则的实际运用,是对类的封装. ...

最新文章

  1. 切版网上线,启用qieban.cn
  2. 6421B Lab3 DNS的配置与故障排除
  3. vue中使用MD5加密
  4. Tensorflow深度学习之十二:基础图像处理之二
  5. java逻辑第九章_深入理解jvm-(第九章)类加载及执行子系统的案例与实战
  6. 【Python基础】Matplotlib官方小抄手册公开(配套可视化代码)!
  7. jquery datatable设置垂直滚动后,表头(th)错位问题
  8. C语言(CED)gameboy接馅饼问题
  9. Redis面试 - 集群模式
  10. XGBOOST模型简单调参(分类)
  11. MAC常用java开发软件
  12. 关于DiskGenius 克隆分区和系统迁移问题,以及如何解决缺少系统引导、双硬盘双系统引导问题,多个启动项
  13. 4.re包学习(正则表达式)
  14. 前端 配色网站 自用 免费 颜色很全
  15. 从0到1,数据治理一周年大纪实
  16. JVM内存空间组成+GC回收机制
  17. 纯CSS实现图片百叶窗展示效果
  18. 刘强东的大格局:京东要抢食亿万级货运出行市场!
  19. 使用requests爬取豆瓣电视
  20. 我想贪图安逸,但又不甘心,怎么办?

热门文章

  1. BZOJ 2460: [BeiJing2011]元素 线性基
  2. React组件生命周期-正确执行运行阶段的函数
  3. 【原创】centos常见问题集锦
  4. 复古多变“格子控”混搭 夏季继续魅力四射
  5. 诗与远方:无题(二十七)- 写给我妹妹的一首诗
  6. eDiary电子日记本
  7. Spring之数据源整理
  8. Java 面向对象:接口的理解
  9. 21.1-21.4 memcached介绍,安装使用,状态查看
  10. 自定义格式字符串随笔(IFormattable,IFormatProvider,ICustomFormatter三接口的实现)