java语言 百分网手机站

Java单例设计模式

时间:2020-09-02 19:51:52 java语言 我要投稿

Java单例设计模式

  导语:如何设计一例简单的JAVA语言呢?如何快速掌握设计的入门技巧呢?下面跟着小编一起来学习吧!

  (1)设计模式:

  解决某类问题行之有效的方法,是一种思想,是规律的.总结

  (2)用来保证某个类在内存中只有一个对象

  (3)保证唯一性的思想及步骤

  **为了避免其他程序建立该类对象,先禁止其他程序建立该类对象,即将构造函数私有化

  **为了其他程序访问到该类对象,须在本类中创建一个该类私有对象

  **为了方便其他程序访问到该类对象,可对外提供一个公共访问方式

  比如API中的Runtime类就是单例设计模式。

  (4)单例设计模式的两种方式

  A:饿汉式 当类加载的时候,就创建对象。

  class Student

  {

  private Student(){}

  private static final Student s = new Student();

  public static Student getInstance()

  {

  return s;

  }

  }

  B:懒汉式 当使用的使用,才去创建对象。

  class Student

  {

  private Student(){}

  private static final Student s = null;

  public static Student getInstance()

  {

  if(s==null)

  {

  //线程1就进来了,线程2就进来了。

  s = new Student();

  }

  return s;

  }

  }

  饿汉式和懒汉式的区别:

  **

  饿汉式是类一加载进内存就创建好了对象;

  懒汉式则是类才加载进内存的时候,对象还没有存在,只有调用了getInstance()方法时,对象才开始创建。

  **

  懒汉式是延迟加载,如果多个线程同时操作懒汉式时就有可能出现线程安全问题,解决线程安全问题

  可以加同步来解决。但是加了同步之后,每一次都要比较锁,效率就变慢了,所以可以加双重判断来提高程序效率。

  注:开发常用饿汉式,因为饿汉式简单安全。懒汉式多线程的时候容易发生问题


【Java单例设计模式】相关文章:

JAVA设计模式之单例模式11-23

解析Java的设计模式编程之解释器模式的运用11-23

Java的设计模式编程中责任链模式的运用的实例讲解12-01

该怎么使用Java设计模式编程中的OCP开闭原则?11-23

简单讲解Java的Future编程模式方案11-25

单页网站设计技巧09-18

Java开发策略模式的简单应用实现方法11-30

Java程序设计示例教程11-21

C语言程序设计50例09-30

JAVA的动态考试系统的设计12-03