设计模式介绍
1.什么是设计模式?
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式
是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 设计模式使代码编制真正工程化,设计模式是软件工程的基石,
如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应的原理来与之对应,
每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案,这也是它能被广泛应用的原因。简单说:
设计模式就是在某些场景下,针对某类问题的某种通用的解决方案。
2.单例设计模式?
单例(Singleton)模式的定义:指一个类只有一个实例,且该类能自行创建这个实例的一种模式。
应用场景:如果某个类创建比较麻烦,可以使用单例设计模式先创建好;
例如:多线程的线程池、数据库的连接池、系统中的缓存等;
单例模式有 3 个特点:
单例类只有一个实例对象;
该单例对象必须由单例类自行创建;
单例类对外提供一个访问该单例的全局访问点;
3.单例设计模式的实现:
单例设计模式有两种方式:饿汉式和懒汉式;
饿汉式:
1.私有构造方法;
2.创建对象;
3.提供对外的访问方式,便于外界获取对象;
代码演示:
public class SingleTon1 {
//私有构造方法,不让其他人创建对象
private SingleTon1(){
}
//创建对象
private static final SingleTon1 instance = new SingleTon1();
//对外暴露方法,便于获取对象
public static SingleTon1 getInstance(){
return instance;
}
}
懒汉式:
1.私有构造方法;
2.声明类的静态对象;
3.提供对外的同步方法访问方式;
public class Singleton2 {
//私有构造方法
private Singleton2(){
}
private static Singleton2 instance;//声明静态的类对象
public static synchronized Singleton2 getInstance(){
if (instance == null) {
instance = new Singleton2();
}
return instance;
}
}