Java学习之Java的单例模式

      本文由广州疯狂软件Java培训中心为你整理:

  单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的驱动程序对象常被设计成单例。这些应用都或多或少具有资源管理器的功能。

  单例模式有一下特点:

  1、单例类只能有一个实例。

  2、单例类必须自己自己创建自己的唯一实例。

  3、单例类必须给所有其他对象提供这一实例。

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

  单例模式的设计:一个类在内存中只存在一个对象。

  方法:

  1,为了避免其他程序过多建立该类对象,先禁止其他程序建立该类对象

  2,为了让其他程序访问到该类对象,在该类中自定义一个对象

  3,为了方便其他程序对自定义对象的访问,可以对外提供一些访问方法

  代码体现:

  1,将构造函数私有化

  2,在本类中创建一个本类对象

  3,提供一个方法可以获取到该对象

  方法一:先初始化

  代码如下 复制代码

  class Single{

  private Single(){}

  private static Single s = new Single();

  public static Single getInstance(){

  return s;

  }

  }

  方法二:对象被调用时才初始化

  代码如下 复制代码

  class Single{

  private static Single s=null;

  private Single(){}

  public static Single getinstance(){

  if(s==null){

  s=new Single();

  }

  return s;

  }

  }

  //调用

  class SingleDemo{

  public static void main(String[] args){

  Single s1= Single.getInstance();

  }

  }

  学真正Java技术,当然选疯狂软件Java培训机构,打造国内标准Java人才

  疯狂软件Java培训优势

  1. Java是世界第一大编程语言,市场占有率达20%。

  2.广州最专业Java培训机构,多年教学经验。

  3.学员技术牛就业率最好,就业薪资都在5000以上。

  4.部分老师还是Java技术系列书籍的作者,由这样的Java书籍原创作者讲课可想而知课程条理清晰、讲解清楚,知识面广、深度足够!

  5.疯狂软件Java培训课程以项目实战带动教学,上课打破传统课堂模式,以实训项目贯穿教学,带领学生一起做企业真实项目。

  疯狂Java培训专注软件开发培训,提升学员就业能力,重点提升实践动手能力。高薪从IT名企请来项目经理为学员亲自授课,对学员进行实战教学,在没有工作经验的学员,在疯狂java,通过大量全真经典企业级项目进行集中培训,学员通过数月培训都可获得1-2年的工作经验,进而在同类的求职者中脱颖而出。疯狂Java培训让你体会java编程的快乐,项目开发的兴奋,成就感,通过短短几个月的时间,让你在半年的时间内掌握8-10万的代码量,掌握Java核心技术,迅速成为技能型的现代化高端人才,迅速获得高薪就业!