设计模式(java)
文章平均质量分 79
7个七
这个作者很懒,什么都没留下…
展开
-
设计模式(java)--3.装饰者模式
1.装饰者模式是什么装饰者模式定义比较抽象,我们可以举一个经典的例子来说明。奶茶店里有x种奶茶和y种配料。每一个产品用一种x和y中的1个或多个配料组成。请问怎么实现上述的功能?方案一:x中的奶茶和y种配料,把所有搭配情况枚举出来,为每一个搭配方案定义一个类 ,显然,这种方式稍加改动就会让类暴炸,不妥。方案二:超类drink中把所有的种类调料都内置到超类中。把y个配料,内置进去,但他们都是布尔类型的,在下面定义的方法用于判断,是否扩展类中是否有他们,或者是要加什么配料,同时是否要加钱。但这个方案有缺点,原创 2022-03-22 22:51:00 · 305 阅读 · 0 评论 -
设计模式(java)--2.策略模式
策略模式1.策略模式是什么?为什么?2.类图3.例子4.策略模式的优点5.策略模式的缺点1.策略模式是什么?为什么?软件开发中常常遇到类似的情况,实现某一个功能有多种算法或者策略,我们可以根据环境或者条件的不同选择不同的算法或者策略来完成该功能。比如一个超市的优惠有多种多样的方式,多种优惠方式对应了算法。如果我们将这些算法封装起来,该类代码将较复杂,维护较为困难。如果我们将这些策略包含在客户端,这种做法更不可取,将导致客户端程序庞大而且难以维护,如果存在大量可供选择的算法时问题将变得更加严重。为了解决原创 2022-03-15 23:19:13 · 754 阅读 · 0 评论 -
设计模式(java)--1.简单工厂模式
简单工厂模式简单工厂模式是什么?为什么?类图经典例子1.UML类图:2.代码实现:优点和缺点1.优点2.缺点简单工厂模式是什么?为什么?简单工厂模式(Simple Factory Pattern):又称为静态工厂方法(Static Factory Method)模式 。简单工厂模式可以将产品的“消费”和生产完全分开,客户端只需要知道自己需要什么产品,如何来使用产品就可以了,具体的产品生产任务由具体的工厂类来实现。工厂类根据传进来的参数生产具体的产品供消费者使用。这种模式使得更加利于扩展,当有新的产品加入原创 2022-03-13 22:52:48 · 316 阅读 · 0 评论