自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 装饰器模式-你是我的奶茶

装饰器模式-Decorator故事:我有一杯奶茶,奶茶里面可以加珍珠,可以加沙冰,可以加绿茶…这杯奶茶加了不同的东西装饰,变成了不同的口味,当然价格也各不相同。类图:伪代码:/*** 抽象类--奶茶**/public abstract class AbstractMilkTea { public abstract String getType(); public abstract int getPrice();}/*** 就是一杯奶茶,不加任何东西**/p

2021-05-15 16:16:24 234

原创 策略模式-五一假期的计划

策略模式:Strategy前言:策略模式定义一系列的算法,这些算法可以互相替换,同一时间只会执行一种策略。故事:五一放假了,如果下雨就打算宅家里看书;如果阴天就去打球;如果晴天就去旅游类图:伪代码:/*** 抽象的策略**/public interface HolidayStrategy { void doPlan();}public class SunPlan implements HolidayStrategy { @Override public

2021-05-13 17:34:33 75

原创 桥接模式-绘画与展览

桥接模式: Bridge前言:先说两个概念,类的功能层次结构;类的实现层次结构。故事:美女擅长绘画,擅长素描,最近又报名了兴趣班,学习了油画,山水画。如果绘画是个接口,山水画、素描、油画就是实现类,这就称为类的实现层次结构。美女绘画水平越来越高,想要去办一个展览。把展览看作是一个功能,我们还可以在现场搞一些签名活动或者拍照,这就理解为功能层次结构的扩展。类图伪代码:/*** 绘画的抽象,对应类的实现层次结构的扩展**/public interface Painting { v

2021-05-13 13:25:28 82

原创 适配器模式-两种方式

适配器模式–adapter故事:中国的家用标准电压是220V,空调冰箱这些大家电的输入电压是220V。但是像手机充电器的输入电压是5V,笔记本的是100V.为了能让笔记本、手机也能充电,这时候就需要一个适配器。适配器分类:1.类适配器类图:伪代码:public class AC220 { /** * 冰箱、洗衣机都可以直接使用220V交流电 */ public int standard(){ return 220; }}pub

2021-04-24 19:47:12 381 3

原创 组合模式--硬盘里面的秘密avi

组合模式-composite土味情话:看了三本书,都是文件夹和文件的例子,我还是不挣扎了,其实我也想了一个例子(公司的组织架构)。当写代码的时候遇见树形结构的数据,都应该想起这个模式。类图:伪代码:/** * @author 康康的远方 * @date 2021/4/9 */public abstract class Entry { public abstract String getName(); public abstract int getSize();

2021-04-10 01:11:25 119 2

原创 享元模式--重复使用的画笔

享元模式-flyweight故事:美女喜欢画画,彩色水笔是可以重复使用的。土味情话:享元模式其实挺好记忆的,就是new一些对象,放到Map里面。需要使用这个对象的时候,就从Map里面获取而不是自己重新new一个。数据库连接池就是享元模式的很好的例子。伪代码下面用彩色笔举例,享元模式结合单例模式以及工厂方法模式举例/** * 画笔 * @author 康康的远方 * @date 2021/4/9 */public class Pen { private String colo

2021-04-09 22:42:57 79

原创 责任链模式--阶梯计费

责任链模式-chain of responsibility前言:最近在学习设计模式,每天晚上九点吹着寒风,走在回去的路上我就会想,今天写的代码可以用什么设计模式呢?真正的使用过一次,我发现印象就特别的深刻,下面是我真实的运用的案例。故事:帅哥:“今天家里开通了燃气,据说是阶梯收费分。第一阶梯的总气量是300,单价收费1.89;第二阶梯的总气量是600,单价是2.89;第三阶梯总气量无限大,单价是3.89。燃气公司可真是赚钱啊,天天煲汤,那这燃气费都得好几百一个月了。”类图:伪代码:/** *

2021-04-06 14:44:24 421

原创 模板模式--打工人的一天

模板模式:Template-Method故事:帅哥:“每天都在加班,我已经很久没有看见日落了。生活真的是太苦逼了,每天都是这样两点一线,很少有自由的时间可以支配啊。生活的作息就是被安排好的模板,没有一点意外啊。”美女:“我上班可没你这么惨,我每天朝九晚五,自由时间还是比较充足的。”类图:代码:/** * @author 康康的远方 * @date 2021/4/5 */public abstract class WorkingDay { public final void s

2021-04-05 22:43:37 197 6

原创 建造者模式-佛系的妆容

建造者模式-builder故事:美女:“最近都不太出门,我就画个淡妆。画个眉毛,口红,头发也随便的扎一下。”代码:/** * 不想出门的美女只想随意画个妆,偶尔画个眉毛,有时涂个口红,有时扎个头发 * @author 康康的远方 * @date 2021/4/5 */public class Beauty { private String lip; private String brow; private String hair; private Beau

2021-04-05 19:08:27 156 1

原创 原型模式-化妆的烦恼

原型模式-prototype故事:美女:“每天化妆都要花一两个小时,好麻烦啊。”帅哥:“如果可以复制就可以节省很多时间了。”类图:伪代码:/***化妆实现Cloneable*/public interface MakeUp extends Cloneable { void style(String s);}/** *Lip口红实现化妆MakeUp接口 * @author 康康的远方 * @date 2021/4/5 */public class Lip im

2021-04-05 17:20:22 126 2

原创 单例模式-4种实现方式

单例模式-4种实现方式故事:帅哥:“我是一个很专一的人,一生只爱一个。”美女:“怎么证明?”伪代码1.饿汉单例模式public class MyHeart { private final static MyHeart MY_HEART = new MyHeart(); private MyHeart(){} public static MyHeart getMyHeart(){ return MY_HEART; }}优点:随着类的加载而加

2021-03-28 23:21:27 1186 8

原创 抽象工厂模式--董小姐要造手机

抽象工厂模式(abstract-factory)故事(一):美女喜欢网购,国内国外的都喜欢,付钱的时候就会涉及国内支付和国外的支付。类图:抽象工厂类AbstractFactoryPay。里面有三个方法,一个是licese(),来中国开通支付功能肯定要有相关部门的执照。另外两个是抽象方法分别返回抽象的产品(接口或者抽象类)ChinesePay和OverseaPay。抽象产品有多个具体实现,阿里支付(ALIPay),京东支付(JingDongPay),以及苹果支付(AppayPay)思考:抽象工厂里

2021-03-28 17:02:49 171

原创 方法工厂设计模式-method factory

工厂方法设计模式故事:美女爱拍照,会输出一些照片。帅哥爱写文章,会输出一些文章。类图:思考:如果要添加一个新的爱好,比如书法。这时帅哥美女都不会,就需要分别再增加一个HobbyProduct、Factory的实现伪代码public class FactoryMethodTest { public static void main(String[] args) { Factory handsomeFactory = new HandsomeFactory();

2021-03-26 22:13:25 130 2

原创 七个设计原则

七个设计原则:1. 开闭原则扩展开放,修改关闭。(最好记的原则)提高软件系统的可复用性和可维护性2.依赖倒置原则依赖接口编程,而不要依赖实现。(Controller层调用service层的时候)优点:减少耦合性3.单一职责原则一个类、方法、接口只负责一件职能。优点:降低系统的复杂性4.里氏替换原则子类可以替换父类,父类不能替换子类。所以写代码的时候不能改变父类方法的本意。5.迪米特法则原则一个对象应该对其他对象保持最少的了解。这个经常忘记,举个例子吧。有个美女,喜欢穿汉服。我想知道美

2021-03-24 00:07:54 126

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除