概述
设计模式:
单例模式
定义: 确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。 代码
public class Singleton {
private static final Singleton singleton = new Singleton();
private Singleton() {
}
public static Singleton getSingleton() {
return singleton;
}
}
工厂方法模式
定义: 定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。 工厂方法类图:
代码
// 抽象产品类
public abstract class Product {
public void method1() {
//pass
}
public abstract void method2();
}
// 具体产品类
public class ConcreteProduct1 extends Product {
public void method2() {
//pass
}
}
public class ConcreteProduct2 extends Product {
public void method2() {
//pass
}
}
// 抽象工厂类
public abstract class Creator {
public abstract <T extends Product> T createProduct(Class<T> c);
}
// 具体工厂类
public class ConcreteCreator extends Creator {
public <T extends Product> T createProduct(Class<T> c) {
Product product = null;
try {
product = (Product) Class.forname(c.getName()).newInstance();
} catch(Exception e) {
// catch exception
}
return (T) product;
}
}
// 使用场景
public class Client() {
public static void main(String[] args) {
Creator creator = new ConcreteCreator();
Product product = creator.createProduct(ConcreteProduct1.class);
// ...
}
}
抽象工厂模式
定义: 为创建一组相关或相互依赖的对象提供一个接口,而且无须指定它们的具体类
代码
模板方法模式
定义: 定义一个操作中算法框架,而将一些实现步骤延迟到子类中。使得子类可以不改变算法的结构即可重新定义改算法的某些特定步骤。
代码
转载于:https://my.oschina.net/u/724312/blog/1836547
最后
以上就是酷酷小蘑菇为你收集整理的设计模式定义的全部内容,希望文章能够帮你解决设计模式定义所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复