单例模式
2015-07-14 20:56
155 查看
package Singleton;
/**
* 饿汉式
* @author dell(会占内存)
*
*/
/*public class Car {
private static Car car = new Car();
private Car(){};
public static Car getInstance(){
return car;
}
}*/
/**
* 懒汉式
* @author dell (线程不安全)
*
*/
/*public class Car {
private static Car car = null;
private Car(){};
public synchronized static Car getInstance(){
if(car==null){
car = new Car();
}
return car;
}
}*/
/**
*双锁机制
* @author dell (线程安全)
*
*/
public class Car {
private static Car car = null;
private Car(){};
public static Car getInstance(){
if(car==null){
synchronized (Car.class) {
if(car==null){
car = new Car();
}
}
}
return car;
}
}
/**
* 饿汉式
* @author dell(会占内存)
*
*/
/*public class Car {
private static Car car = new Car();
private Car(){};
public static Car getInstance(){
return car;
}
}*/
/**
* 懒汉式
* @author dell (线程不安全)
*
*/
/*public class Car {
private static Car car = null;
private Car(){};
public synchronized static Car getInstance(){
if(car==null){
car = new Car();
}
return car;
}
}*/
/**
*双锁机制
* @author dell (线程安全)
*
*/
public class Car {
private static Car car = null;
private Car(){};
public static Car getInstance(){
if(car==null){
synchronized (Car.class) {
if(car==null){
car = new Car();
}
}
}
return car;
}
}
相关文章推荐
- FZU1515盒子中的气球,枚举法
- 解决PHP下json_decode返回NULL的问题。
- Openwrt增加内核模块
- 深入理解JavaScript原型链
- 面向对象编程之异常处理
- android layout parser
- OpenMeetings 3.0.6安装过程简述
- 深入理解JavaScript原型链
- grep命令小结
- C# 方法参数(默认参数)
- hdu 5280 Senior's Array(dp)
- css中单位px和em,rem的区别
- 【DP】poj1185
- ASCII码
- debug
- 【剑指offer】从尾到头打印链表
- Ubuntu下使用搜狗输入法出现fcitx进程CPU占用过高情况
- Leetcode 124 Binary Tree Maximum Path Sum 二叉树最大路径和
- 最新版本的Hive 0.13发布,增加ACID特性
- Sending the User to Another App