缺省适配器模式(Adapter)
-
定义一个规则,和尚可以吃斋 念经 打坐 撞钟 习武,但是鲁智深 鲁达 形态丑陋 面相凶顽 ,此人上应天星 心地刚直 虽时下凶顽 命中驳杂 久后却得清净 正果非凡 汝等皆不及他。从上面可以看出,定义的规则,鲁智深有超出范围地方,引入适配器,让不规范的规范化。
-
为什么要有适配器:接口定义要实现的方法,相当于规范,这些规范有些类暂时不需要实现,但是以后可能会需要实现,比如鲁智深在刚开始肯定坐不下来,但是到水浒传最后可以坐下来打坐,所以他刚开始不需要实现打坐接口,但是后来需要实现这个接口。定义一个适配器,先实现现在不需要将来可能需要的接口,但是不具体实现,具体化,在方法体中抛出自定义异常,这样继承适配器的子类不需要一定实现接口中所有方法。
interface Box{ public boolean add(element); public void add(int index,int element){ } public void addAll(){ } public int get(index); public int remove(index); public int size(); }
public abstract class AbstractBox implements Box{ public boolean add(element); public void add(int index,int element){ //抛出自定义异常 } public void addAll(){ //抛出自定义异常 } public int get(index); public int remove(index); public int size(); }