操作方法
java封装的动态代理模式,为其他对象提供一种代理以控制对这个对象的访问,java.lang.reflect.Proxy、java.lang.reflect.InvocationHandler, //取得代理对象 Proxy.newProxyInstance(target.getClass().getClassLoader(), target.getClass().getInterfaces(), this); //实现InvocationHandler接口实现invoke方法 public Object invoke(Object proxy, Method method, Object[] args) throws Throwable;
java封装的原型模式,可以将对象进行浅复制和深复制,Object.clone(),java.lang.Cloneable
java封装的迭代器模式,将集合的迭代和集合本身分离,java.util.Iterator,java.util.Collection.iterator()
java封装的观察者模式,通知对象状态改变,java.util.Observable,java.util.Observer
js的原型模式,prototype,js的原型使用代码示例如图
Object-C的KVO 观察者模式,KVO的使用步骤: 通过addObserver: forKeyPath: options: context:为被监听对象(它通常是数据模型)注册监听器 重写监听器的observeValueForKeyPath: ofObject: change: context:方法