创建型模式分为五类:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式
一、工厂方法模式:接口-实现类-工厂类
工厂类的目的是为了产生Sender对象,通过不同的参数传入产生不同的对象。
将工厂类中的工厂方法改为多个工厂方法即为多个工厂方法的设计模式
将工厂类中的工场方法改为static即为静态工厂方法设计模式
二、抽象工厂方法模式:接口-实现类-工厂类
特点是:
工厂类实现某个接口,利于以后扩展,比如可以增加BlueTooth的工厂类。
工厂设计模式是抽象工厂设计模式的一个特例。
三、单例模式
单例对象(Singleton),保证在一个JVM中,该对象只有一个实例存在。
饿汉模式:类加载的时候就会创建,加载类时比较慢,但运行时获取对象的速度比较快,线程安全
/*
* 类型:饿汉模式
*/
public class Singleton {
//1.将构造方法私有化,不允许外部直接创建对象
private Singleton(){
}
//2.创建类的唯一实例,使用private static修饰
private static Singleton instance=new Singleton();
//3.提供一个用于获取实例的方法,使用public static修饰
public static Singleton getInstance(){
return instance;
}
}
懒汉模式:类加载的时候不去创建,加载类时比较快,第一个用户获取时再去创建实例,第一次获取对象的速度比较慢,线程不安全
/*
* 懒汉模式
*/
public class Singleton2 {
//1.将构造方式私有化,不允许外边直接创建对象
private Singleton2(){
}
//2.声明类的唯一实例,使用private static修饰
private static Singleton2 instance;
//3.提供一个用于获取实例的方法,使用public static修饰
public static Singleton2 getInstance(){
if(instance==null){
instance=new Singleton2();
}
return instance;
}
}
原文:http://www.cnblogs.com/tonyluis/p/5777468.html