博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java设计模式---单例模式
阅读量:6689 次
发布时间:2019-06-25

本文共 1094 字,大约阅读时间需要 3 分钟。

单例设计模式

概念:

  java中单例模式是一种常见的设计模式,单例模式分三种:懒汉式单例、饿汉式单例、登记式单例三种。
  单例模式有一下特点:
  1、单例类只能有一个实例。
  2、单例类必须自己自己创建自己的唯一实例。
  3、单例类必须给所有其他对象提供这一实例。
  单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的驱动程序对象常被设计成单例。这些应用都或多或少具有资源管理器的功能。每台计算机可以有若干个打印机,但只能有一个Printer Spooler,以避免两个打印作业同时输出到打印机中。每台计算机可以有若干通信端口,系统应当集中管理这些通信端口,以避免一个通信端口同时被两个请求同时调用。总之,选择单例模式就是为了避免不一致状态,避免政出多头。

首先看一个经典的单例实现。

//如何实现单例设计模式class singleDog{        String name;     int age;  //阻止别人用new来多次创建对象,保证对象唯一   private static singleDog s = new singleDog(); //静态的成员变量     //私有化构造方法,防止通过new来创建对象   private singleDog(){      }   //提供一个静态方法来接受唯一的对象   public static singleDog getInstance(){            return s;   }}class Demo7 {     public static void main(String[] args){             singleDog sd1 = singleDog.getInstance();    singleDog sd2 = singleDog.getInstance();    singleDog sd3 = singleDog.getInstance();    System.out.println(sd1);    System.out.println(sd2);    System.out.println(sd3);     }}

 

单例模式的好处:

单例模式,能避免实例重复创建; 单例模式,应用于避免存在多个实例引起程序逻辑错误的场合; 单例模式,较节约内存。

 

转载于:https://www.cnblogs.com/lizixiansheng/p/6069781.html

你可能感兴趣的文章
解决WCF调用多次之后没有响应的问题 转
查看>>
【BZOJ2318】【spoj4060】game with probability Problem 概率DP
查看>>
空格&nbsp在不同浏览器中显示距离不一致问题解决方法
查看>>
Nancy 学习-身份认证(Basic Authentication) 继续跨平台
查看>>
分享5个主流的HTML5开发工具
查看>>
基于Ionic2的开源项目
查看>>
QEMU-KVM中的多线程压缩迁移技术
查看>>
Android下创建一个SQLite数据库
查看>>
软件产品与代码版本管理指南
查看>>
分析Linux内核创建一个新进程的过程【转】
查看>>
sql如何分组选择显示最新的一条数据
查看>>
周锦民:腾讯在线教育视频互动直播间技术实践
查看>>
[perl] 正则表达式实现多模式匹配
查看>>
class左边nbu 2414 Please help the poor donkey!
查看>>
[转]UML类图、关系及其JAVA代码
查看>>
PhotoShop算法原理解析系列 - 像素化---》碎片。
查看>>
设计模式之责任链模式
查看>>
在 Windows 下安装 Oracle 11g XE (Express Edition)
查看>>
php多态设计
查看>>
oracel SQL多表查询优化
查看>>