常见的设计模式 图说设计模式 26种设计模式 谈谈设计模式 设计模式的理解 搞懂设计模式就这一篇

列举一下常用的设计模式

1. 单例模式

   什么叫单例,这个就是字面意思,独个实例、唯一的实例。这个就是你写的这个类去获取实例队形时,都是拿到的一个,这个类就只能new 出一个对象。说一个实现方式。

public class SingletonPattern{
    private static final SingletonPattern singletonPattern = new SingletonPattern();

    private SingletonPattern(){
    
    }
    public syschronized static SingletonPattern getInstance(){
        return singletonPattern;
    }
}

2 .代理模式

就是你需要什么东西,需要找到A去拿,但是你找不到A,B有是A的代理,这时你可以找B,然后B把你的请求告诉A ,让A去处理, 然后你就拿到了相应的结果。

B可以理解为现实生活中的’中介‘。大家应该都租过房子,你要去租房子,这个房子都在房东手里,你有不知道房东在哪里,这时候你就去找中介了,告诉他我要租房,中介就会带你去就看房子了。

还可以理解无程序的接口(interface)类就像是B, 实现(implements)类就是A,你要掉A中的某个方法,你直接在B中那对应的方法就可以一样。

这里不写例子了,接口B,A实现类,调B.function就可以让A干活了。

3.策略模式

说道策略模式,我这里就举个小张(徒弟)下山的例子,一些在山上修行的弟子需要下山去历练,下山时师傅都会赠送一些物品,比如赠送红黄蓝锦囊(策略),红的是危险时打开,黄的是需帮助时打开,蓝的是需要情报时打开,这时候小张下山了。

小张下山后遇到一群人也在讨论在某地发现一套绝世神兵,他也很心动,然后就打开了蓝色锦囊(使用策略),比如说得到了需要的东西,他决定前往,这时候发现自己势单力薄,决定使用黄色锦囊(又使用策略),找到了足够的人手,他们就一起去寻找神兵,找到了神兵,发现好多人,然后就打起来了,最后神兵落到了小张手中,自己的帮手都挂了,还被一群人追杀,最后被迫无奈开启红色锦囊(再次使用策略),最后化险为夷得到了绝世神兵,然后带着神兵回到了山上。

在代码中体现就是在某个时候需要什么方法,另一个时候需要什么方法,这就是策略模式。再给大家举一个我使用场景。在公司发工资的时候需要交个税,5000以下怎么算方法A,超过500的怎么算方法B,有房贷的怎么算方法C,有租房的怎么算方法D等一系列的方法,在实际中根据某个具体情况调有对用的方法。

4.工厂方法模式

有时间在更新。。。。。

おすすめ

転載: blog.csdn.net/yu1xue1fei/article/details/114682778