一句话概括Singleton(单例模式)
只创建一个实例(本笔记是初学笔记,主要是了解各种设计模式,后续会深入讲解,比如单例模式的懒汉式、饿汉式之类的,在本文就没有提及)
主要的接口和类
Singleton
通过getInstance获取单个实例的类
具体案例
Singleton
public class Singleton {
private static Singleton singleton = null;
private Singleton(){
System.out.println("生成了Singleton实例");
}
public static Singleton getInstance(){
if(singleton==null){
singleton = new Singleton();
}
return singleton;
}
}
Main
public class SingletonMain {
public static void main(String[] args) {
Singleton s1 = Singleton.getInstance();
Singleton s2 = Singleton.getInstance();
Singleton s3 = Singleton.getInstance();
System.out.println("s1"+s1);
System.out.println("s2"+s2);
System.out.println("s3"+s3);
}
}
输出结果
生成了Singleton实例
s1com.cutezha.singleton.Singleton@34a245ab
s2com.cutezha.singleton.Singleton@34a245ab
s3com.cutezha.singleton.Singleton@34a245ab
思考与总结
初学没啥好总结的
说一下深入要学的吧:
- 几种类型
- 同步问题