饿汉
package ithema_day2;
/*
目标 单例模式(饿汉模式)
类中只允许创建一个对象
饿汉模式:像一个饿汉一样,不管需不需要用到实例都要去创建实例,即在类产生的时候就创建好实例,这是一种空间换时间的做法。
作为一个饿汉而言,体现了它的本质——“我全都要”。
*/
public class singlen {
//创建一个对象
private static singlen sig = new singlen();
//构造器私有化
private singlen(){
}
//返回该对象
public static singlen getInstance(){
return sig;
}
}
懒汉
package ithema_day2;
/*
目标 单例模式(懒汉模式)
类中只允许创建一个对象
懒汉模式:在需要使用时才创建对象 且只创建一个
*/
public class singlen2 {
//创建空指向对象
private static singlen2 sig;
//封装构造器
private singlen2(){
}
//创建单个对象 并返回
public static singlen2 getsig(){
if(sig == null){
sig = new singlen2();
}
return sig;
}
}
测试
package ithema_day2;
/*
懒汉和饿汉的使用
*/
public class Demo {
public static void main(String[] args) {
//指向饿汉对象
singlen s =singlen.getInstance();
//指向懒汉对象
singlen2 s2 = singlen2.getsig();
}
}