摘要:        
访问者模式是一种行为设计模式 访问者模式被用在针对一组相同类型对象的操作 优点是,可以把针对此对象的操作逻辑转移到另外一个类上 适合场景: 对象结构比较稳定,但经常需要在此对象结构上定义新的操作 对一个对象结构中的对象进行很多不同的且不相关的操作,而需要避免这些操作“污染”这些对象的类,也不希望在增    阅读全文
        
            posted @ 2021-08-03 13:45
土味儿
阅读(327)
评论(0)
推荐(0)
        
        
            
        
        
摘要:        
一、各个模式总结 1、创建型模式 1)单例模式 Singleton Pattern 创建某个类的实例,该类的实例在系统中只有这一份 实现方式 八种方式:推荐用 枚举、内部静态类、DCL双重检测锁 案例 java.lang.Runtime 就是经典的 单例模式(饿汉式) 2)简单工厂模式 Simple    阅读全文
        
            posted @ 2021-08-03 09:25
土味儿
阅读(336)
评论(0)
推荐(0)
        
        
            
        
        
摘要:        
10、策略模式 Strategy Pattern [ˈstrætədʒi] 1)基本介绍 策略模式(Strategy Pattern)中,定义算法族(策略组),分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户 体现了几个设计原则 把变化的代码从不变的代码中分离出来 针对接    阅读全文
        
            posted @ 2021-08-01 12:53
土味儿
阅读(73)
评论(0)
推荐(0)
        
        
            
        
        
摘要:        
6、中介者模式 Mediator Pattern [ˈmiːdieɪtər] 1)基本介绍 中介者模式(Mediator Pattern),用一个中介对象来封装一系列的对象交互。中介者使各个对象不需要显式地相互引用,从而使其解耦,而且可以独立地改变它们之间的交互 中介者模式属于行为型模式,使代码易于    阅读全文
        
            posted @ 2021-08-01 12:41
土味儿
阅读(46)
评论(0)
推荐(0)
        
        
            
        
        
摘要:        
3、访问者模式 Visitor Pattern 参考:https://www.cnblogs.com/java-my-life/archive/2012/06/14/2545381.html 在阎宏博士的《JAVA与模式》一书中开头是这样描述访问者(Visitor)模式的: 访问者模式是对象的行为模    阅读全文
        
            posted @ 2021-08-01 12:32
土味儿
阅读(61)
评论(0)
推荐(0)
        
        
            
        
        
摘要:        
六、行为型模式 1、模版方法模式 Template Method Pattern 又叫模板模式 Template Pattern 1)基本介绍 模板方法模式(Template Method Pattern),又叫模板模式(Template Pattern),在一个抽象类中公开定义了执行它的方法的模板    阅读全文
        
            posted @ 2021-08-01 12:19
土味儿
阅读(53)
评论(0)
推荐(0)
        
        
            
        
        
摘要:        
员工年假年终奖案例 员工有多种类型:普通员工、主管、经理… 多个属性:姓名、性别、入职年限… 根据员工属性有不同的年终奖(奖金、奖品)和年假: 入职年限不同,福利不同 性别不同,奖品的颜色也不同 福利的形式种类每年都会变;项目要方便扩展、方便维护 传统实现方案 难以修改维护,不利于扩展 if(普通员    阅读全文
        
            posted @ 2021-08-01 09:03
土味儿
阅读(395)
评论(0)
推荐(1)
        
        
                    
                
浙公网安备 33010602011771号