设计模式

常用的设计模式有,单例设计模式、观察者设计模式、工厂设计模式、装饰设计模式、代理设计模式,模板设计模式等等。

单例设计模式:

class singleD {

//私有实例化对象

private singleD () {}

//创建对象

private static singleD s = new singleD();

//返回对象

public static singleD getSingeleD() {

return s;

}

}


动态代理:


动态代理

其中MyInvocationHandler 实现了InvocationHandler 接口

public class MyInvocationHandler implements InvocationHandler {

    private Object target;


public MyInvocationHandler ( Object target) {

this.setTarget(target);

}

@Override

publicObject invoke(Objectproxy, Methodmethod, Object[]args)throwsThrowable {

//TODO自动生成的方法存根

System.out.println("权限校验");

method.invoke(target,args);

System.out.println("日志记录");

return null;

}

public Object getTarget() {

return target;

}

publicvoidsetTarget(Object target) {

this.target=target;

}

}


模板设计模式

//模板类

abstract class Template {

publicvoidalgorithm () {

System.out.println("此处就是算法1");

realization(); 

System.out.println("此处就是算法2");

}

abstractpublicvoidrealization();

}

//实现类

classdemoextendsTemplate{

@Override

publicvoidrealization() {

//TODO自动生成的方法存根

System.out.println("实现的东西");

}

}

你可能感兴趣的:(设计模式)