一、饿汉式:非常饿,类一加载就要初始化(先new 一个对象出来吃)
二、特点:因为类一加载就初始化完成,所以 避免了多线程的问题,并且写法简单,
但是也可能造成资源浪费(如果类对象比较消耗资源),比如没用的时候也会初始化。
三、代码
package com.zxl.design.zxl.design.pattern.singleton;
/**
* Created by Administrator on 2019/6/23.
*/
public class HungrySingleton {
//写法简单的单例模式
//类加载时就初始化,没有多线程问题,但是可能会造成资源浪费,
//比如该对象没有被使用
private final static HungrySingleton hungrySingleton = new HungrySingleton();
//也可以将上述改成如下方式
// private final static HungrySingleton hungraySingleton;
// static {
// hungraySingleton = new HungrySingleton();
// }
private HungrySingleton(){
}
public HungrySingleton getHungrySingleton(){
return hungrySingleton;
}
}
因为该类比较简单,可以用同样之前的方法进行debug进行分析。