java单例模式的实现

单例在很多地方都用的到,例如购物车之类的,我现在就把单例实现类写一下供大家交流
我把类的初始话顺序说一下,大家就能很快理解了
  (单个类)1.静态变量2.静态初始化块3.变量4.初始化块5.构造器
   (继承类)1.父类-静态变量2.父类-静态初始化块
                3.子类-静态变量4.子类-静态初始化块
                5.父类-变量6.父类-初始化块7.父类-构造器
                8.子类-变量9.子类-初始化块10.子类-构造器


饱汉模式下的单例:
public class Singleton1 {
private Singleton1(){

}
private static Singleton1 instance = new Singleton1();
public static Singleton1 getInstance(){
return instance;
}
}
这样在类的初始化时就产生了一个单例对象,之后不再产生了!
/**
 * @author Administrator
 *懒汉模式单例的实现
 */
public class Singleton {
public Singleton() {

}
private static Singleton instance= null;
public static synchronized Singleton getInstance(){
if (instance==null) {
instance = new Singleton();
}
return instance;
}
}
初始化类的时候只有在调用getInstance的时候才会产生一个新的实例
synchronized是必须要加的不然的会造成线程不安全!
提倡用第一种创建方式





评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值