码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA_单例设计模式

时间:2019-11-16 14:24:19      阅读:84      评论:0      收藏:0      [点我收藏+]

标签:访问   --   工程   创建   col   一个   内存   oid   有一个   

单例设计模式是指:实现某个类在内存中只有唯一一个对象的设计模式。分为饿汉式和懒汉式模式:

想要一个工程在运行的时候,某个类在内存中只有一个唯一的对象,那么,要保证:

首先,其他类不能创建该对象--------------------------该对象所属类的构造方法为private修饰(就不能在其他类里面创建本类对象了)                                         

其次,该对象要可以被其他类访问,那么只能在该对象所属类中创建一个该对象 --------------------------在该类中定义一个private static 修饰的本类对象

最后,必须在这个类里面提供访问方法,以便其他类可以访问--------------------------------------在该类中定义一个public static 修饰的,返回值类型为本类引用 的方法

1. 饿汉式设计模式:

class singleColumn{

private singleColumn(){}

private static singleColumn targetObject = new singleColumn();

public static singleColumn requestMethod (){

return targetObject;

}

}

class mainClass{

public static void main(String[] args){

singleColumn targetObject = singleColumn.requestMethod();

}

}

 

2. 懒汉式设计模式:

class singleColumn{

private singleColumn(){}

private static singleColumn targetObject = null;

public static singleColumn requestMethod (){

targetObject = new singleColumn();

return targetObject;

}

}

class mainClass{

public static void main(String[] args){

singleColumn targetObject = singleColumn.requestMethod();

}

}

 

饿汉式和懒汉式的区别在于:前者是在类初始化的时候就完成了静态对象的构建,后者是在调用访问方法的时候才完成的构建。

 

一般推荐使用饿汉式。因为懒汉式的可能会发生阻塞。

 

 

 

JAVA_单例设计模式

标签:访问   --   工程   创建   col   一个   内存   oid   有一个   

原文地址:https://www.cnblogs.com/A-PP-Z-droplet/p/11871515.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!