达内云笔记(三)模式初涉

来源:互联网 发布:封面制作软件ios 编辑:程序博客网 时间:2024/05/22 13:37

模式:解决特定问题的固定编程套路,是无需思考的固定思路


单例模式:解决“单例模式”的固定编程套路

单例:在程序运行期间类只能有一个实例

饿汉式(立即创建对象):

package singleton;public class Demo {public static void main(String[] args) {Girl g = Girl.getGirl();}}class Girl{//私有静态构造器,类加载期间创建private static Girl girl = new Girl();private Girl(){}//只能获得不能修改public static Girl getGirl() {return girl;}}

保证对象只创建了一次,任何时间获得都是一个对象。如果对象是重量级对象,则非常消耗资源。

懒汉式(按需创建对象)

package singleton;public class Demo {public static void main(String[] args) {Boy b = Boy.getBoy();}}class Boy{//私有静态构造器,类加载期间创建private static Boy boy;private Boy(){}//只能获得不能修改public synchronized static Boy getBoy() {//按需创建,如果不需要的话就没必要创建,用于解决重量级对象资源浪费if(boy==null){boy=new Boy();}return boy;}}


- 代理模式:AOP

- 流:装饰器模式

- 线程,Servlet:模板模式

- 迭代器,ResultSet:迭代器模式

- 监听器,Swing:观察者模式