单例模式总结:
单例模式中主要需要解决的是两个问题:全局访问和实例化控制问题。
静态初始化方式是在自己被加载时就将自己实例化,被形象的称为饿汉式单例类。这种方式是类一加载就实例化的对象,要提前占用系统资源。
原先的单例模式处理方式第要在第一次被引用时,才会将自己实例化,所以称为懒汉式单例类。该方式面临着多线程访问的安全性问题,需要双重锁定这样的处理才能达到保证安全。
工厂模式总结:
1)抽象工厂角色: 这是工厂方法模式的核心,它与应用程序无关。是具体工厂角色必须实现的接口或者必须继承的父类。在java中它由抽象类或者接口来实现。
2)具体工厂角色:它含有和具体业务逻辑有关的代码。由应用程序调用以创建对应的具体产品的对象。
3)抽象产品角色:它是具体产品继承的父类或者是实现的接口。在java中一般有抽象类或者接口来实现。
4)具体产品角色:具体工厂角色所创建的对象就是此角色的实例。在java中由具体的类来实现。