设计模式,构建型模式最后一个:Singleton单件模式
保证一个类只有一个实例存在,方法是隐藏构造方法,在类的内部构造一个静态的实例,然后建一个静态方法返回这个实例,其中一个知识点是,静态变量是在main方法执行前初始化的,也就是在程序运行前初始化的。
结构性模式:适配器模式Adapter,桥接模式Bridge,组合模式Composite,装饰模式Dectorator,外观模式Fa ade,享元模式FlyWeight,代理模式Proxy。
Adapter模式,是多重继承的一种替代方法,通过继承一个类,组合一个类,来实现。
Bridge模式,将要执行的业务方法抽象出来,建立一个桥接接口,通过实现该接口用于不同的业务,然后使用该实现类。
Composite模式,多个相同的对象要调用它们的一个方法,单独写一个类,里面有个该对象的类的类型的集合,里面装有许多对象,有个方法,利用循环依次调用每个对象的方法,宗旨是让类的使用者更方便。
Dectorator模式,避免过深继承的一种方式,目前有一个类,但业务需求改变导致这个类有少许变化,如果继承这个类,将导致无限制继承,办法是建立一个这个类的兄弟,实现新的业务需求,然后调用兄弟的方法。
Fa ade模式,用于业务操作十分复杂,为了实现对复杂性的封装,建立一个类,建立一个面向外界的接口,类的使用者只需调用该接口就搞定了,而背后复杂的逻辑不必去关心。
FlyWeight模式,跟单件模式有类似之处,都是为了减少重复对象的创建,这个模式是,建立一个缓存,将已建立的对象放入缓存,当再次需要的时候在缓存中查找是不是已经存在了该对象,如果存在,直接返回,否则创建,这样节省了内存空间,这样的适用于有许多的小型对象的适用。
Proxy模式,用于不同用户有不同操作权限的类似情况,有一个类负责业务逻辑的执行并不负责用户是否具有权限的判断,这件任务由另一个类负责。
以上设计模式的理解,用自己的话写了一下,希望加深理解。
明天可能要给大家讲第三章,得好好准备准备,争取完美,嘻嘻。
没有评论:
发表评论