当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:15:00  来源:本站整理

Java情势筹划之单例情势(一)[Java编程]

赞助商链接



  本文“Java情势筹划之单例情势(一)[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

作为对象的成立情势[GOF95], 单例情势确保某一个类只有一个实例,并且自行实例化并向整个系统供应这个实例.这个类称为单例类.

注:本文乃阎宏博士的《Java与情势》一书的第十五章.

引言

单例情势的要点

单例单例

明显单例情势的要点有三个;一是某各类只能有一个实例;二是它必须自行成立这个事例;三是它必须自行向整个系统供应这个实例.在下面的对象图中,有一个"单例对象",而"客户甲"、"客户乙" 和"客户丙"是单例对象的三个客户对象.可以看到,全部的客户对象同享一个单例对象.并且从单例对象到自身的衔接线可以看出,单例对象持有对自己的引用.

资源管理

一些资源管理器常常计划成单例情势.

在计算机系统中,需求管理的资源包含软件外部资源,比方每台计算机可以有若干个打印机,但只能有一个Printer Spooler, 以避免两个打印功课同时输出到打印机中.每台计算机可以有若干传真卡,但是只应当有一个软件负责管理传真卡,以避免呈现两份传真功课同时传到传真卡中的情形.每台计算机可以有若干通信端口,系统该当集合管理这些通信端口,以避免一个通信端口同时被两个恳求同时调用.

需求管理的资源包含软件内部资源,比方,大大都的软件都有一个(乃至多个)属性(properties)文件存放系统配置.这样的系统该当由一个对象来管理一个属性文件.

需求管理的软件内部资源也包含比方负责记录网站来访人数的部件,记录软件系统内部事件、出错信息的部件,或是对系统的表现举行查抄的部件等.这些部件都必须集合管理,不可政出多头.

这些资源管理器构件必须只有一个实例,这是其一;它们必须自行初始化,这是其二;答应整个系统拜候自己这是其三.因此,它们都满意单例情势的条件,是单例情势的利用.

一个例子:Windows 回收站

Windows 9x 今后的视窗系统中都有一个回收站,下图就显示了Windows 2000 的回收站.

在整个视窗系统中,回收站只能有一个实例,整个系统都利用这个惟一的实例,并且回收站自行供应自己的实例.因此,回收站是单例情势的利用.


  以上是“Java情势筹划之单例情势(一)[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • 利用Javascript实现网页水印(非图片水印)
  • Java开辟环境的搭建
  • Ubuntu java安装与配置
  • 办理Ubuntu 10.04 Firefox3.6 Java浏览器插件不工作的问
  • Ubuntu重装后Java环境的设置
  • Sun Java进入Ubuntu 10.10软件中央
  • Ubuntu 10.10配置Java开辟环境
  • 在Ubuntu 10.10中配置Java环境变量的办法
  • Ubuntu下Java环境的搭建
  • Ubuntu 10.04 下安装 Java, JRE
  • Ubuntu 10.04下的搭建SUN JAVA开辟环境
  • Ubuntu 12.04安装java7
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .