![](https://img-blog.csdnimg.cn/20190825110723739.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
凯哥设计模式
设计模式
凯哥Java
这个作者很懒,什么都没留下…
展开
-
设计模式之工厂模式一简单工厂模式
设计模式之工厂模式一简单工厂模式 工厂模式由来: 在我们创建对象的时候使用,使用new操作的。如果多个对象创建都使用new会。所以工厂模式就是用来代理new操作的一种模式。根据工厂模式由来,我们可以看出工厂模式属于创建型模式。提供一种创建对象的最佳方式。 来源:凯哥Java(kaigejava) 工厂模式主要的分类: 简单工厂模式、工厂方法模式、抽象工厂模式 简单工厂模式: ...原创 2019-08-25 11:05:37 · 239 阅读 · 0 评论 -
设计模式之观察者模式-Java内置观察者及总结
观察者下篇 在上一篇文章中,我们通过污污弹公司司小司做气象站项目学习了观察者模式怎么使用。在本篇中,我们对观察者模式进行总结及关键点,还有一个就是Java中内置的观察者模式。 本文出处:凯哥Java(kagejava) 一:Java内置的观察者 我们将使用Java内置的观察者将气象站项目重新写一次。 内置观察者的区别: Subject对象: 1:subject名称变了,变成...原创 2019-08-24 10:18:34 · 240 阅读 · 0 评论 -
单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗
设计模式之单例模式-单例模式的几种实现方式及小案例 本文来源:凯哥Java(wx:kaigejava) 单例模式有几种?饿汉式、懒汉式。这两种是最常见的。还有几种是对其扩展的。具体如下: 我们可以从上图看到,共有六种方式。 其中在懒汉式基础上扩展的有两种。即:加锁的懒汉式及双重判断加锁的懒汉式 还有一种是使用内部类实现的。即:内部静态类的 最后一种是比较少见的。使用枚举的。 ...原创 2019-08-22 09:32:44 · 131 阅读 · 0 评论 -
设计模式系列教程之单例模式-原理介绍
设计模式系列教程之单例模式-原理介绍 一:单例模式(Singleton)学习步骤 经典的单例模式原理: 本文出处:凯哥Java(wx:kaigejava) 先来看看单例模式的介绍: 其重点就是,使类对象成为系统中唯一的一个实例。怎么理解这句话呢? 我们从数学与逻辑学中来理解:singleton的定义是“有且仅有一个”的意思。 我们来看看单例在哪些地方会被使用到,来理...原创 2019-08-21 09:20:12 · 162 阅读 · 0 评论 -
设计模式之策略模式总结
再上一篇文章《设计模式之策略模式》中,我们通过模拟鸭子项目,了解了什么是策略模式,怎么使用策略模式。本文将通过鸭子项目的学习,对策略模式进行总结。 策略模式: 分别封装行为接口,实现算法族,超类(父类)里放行为接口对象, 在子类里具体设定行为对象。 原则就是: 分离变化部分,封装接口,基于接口编程各种功能。 此模式让行为算法的变化独立于算法的使用者。 策略模式总结: ...原创 2019-08-13 09:58:36 · 293 阅读 · 0 评论 -
设计模式之策略模式
需求: 1:模拟鸭子项目 从项目"模拟鸭子游戏"开始。 鸭子都会叫、会游泳。有的鸭子是红头的、有的鸭子是绿头的。 分析: 从OO(ObjectOriented,面向对象)的角度设计这个项目。 鸭子的父类: 抽象的 1.都会gaga叫 2.抽象的外形(如:红头鸭、绿头鸭等) 3.都会游泳 综上所述,我们得到鸭子父类: publicabstractclassDu...原创 2019-08-11 08:46:16 · 83 阅读 · 0 评论 -
设计模式讲解-初识设计模式
设计模式讲解-初识设计模式 设计模式是什么? 设计模式是人们在面对同类型软件工程设计问题所总结出的一些有用的经验(是前辈们对代码开发经验的总结,是解决特定问题的一系列套路)。设计模式不是代码,而是某类问题的通用设计解决方案。让我想起了:世上本无路,走的人多了,也便成了路。 百科介绍: 23种设计模式总结者: Erich Gamma、Richard Helm、Ralph Joh...原创 2019-08-09 09:28:06 · 147 阅读 · 0 评论 -
设计模式之迭代器模式 引导篇
迭代器模式-引导篇 这两天,比较火的并购新闻就是,网易考拉被阿里以20亿美元收购。从此网易考拉不再姓“网”而姓“阿”了。并购后的网易考拉和阿里的电商系统进行对接。那么问题来了:在阿里有个早餐店的菜单(CakeHouseMenu)使用的事ArrayList来存放菜单的,考拉有个午餐店的菜单(DinerMenu)使用的是数组结构存放的。现在考拉和阿里合并了,两个点的菜单也要合并。 我们先来...原创 2019-09-07 08:21:35 · 115 阅读 · 0 评论 -
设计模式之生活中的模板模式总结篇
模板模式总结篇 在上一篇《设计模式之模板模式引导篇》中,我们使用了泡咖啡和泡茶的日常小场景讲解了模板模式的原理。本篇,我们就结合这个小案例,来对模板模式进行总结。 本文出自《凯哥学设计模式》系列教程。作者:凯哥Java(kaigejava) 凯哥个人博客:www.kaigejava.com 一:模板模式定义(或内容) 在上一篇中,我们知道泡茶和泡咖啡都需要五个步骤。这五个步骤,其实就...原创 2019-09-06 09:11:31 · 151 阅读 · 0 评论 -
设计模式之生活中的模板模式
在讲模板模式原理前,我们按照管理,先来个生活中例子。茶馆需要开发一个自动的泡咖啡和泡茶的程序。 本文出自:《凯哥学设计模式》系列教程中的模板模式一 我们先来看看泡咖啡和泡茶的步骤: 我们根据上图写代码实现: 泡咖啡类,如下图: 泡茶类如下图: 测试类: 运行结果: 很简单。也很容易写出来。写出来很清楚。 从上图中,可以发现,两个流程几乎是一样的套路(...原创 2019-09-05 09:23:06 · 166 阅读 · 0 评论 -
设计模式之外观模式-总结
设计模式之外观模式-总结 在上一篇中,我们模拟家庭影院项目实现了外观模式讲解。本篇我们对外观模式进行总结。 来源:凯哥Java(kaigejava).本文由凯哥《23设计模》系列中的一篇。 凯哥突然感觉,使用家庭影院这个例子不恰当。换个通俗易懂的。去银行存取钱。这个案例大家都遇到过吧。 我们去银行后,每个窗口都有个漂亮的小姐姐为各位服务。在我们存取钱的过程中,只需要和窗口小姐姐沟通...原创 2019-09-04 11:08:48 · 120 阅读 · 0 评论 -
设计模式之命令模式-引导篇及原理
设计模式之命令模式-引导篇及原理 引导 司小司又接到了新项目:家电自动化遥控器API项目。 项目背景:随着物联网的流行以及智能化家具普及。一个遥控器可以管控家里所有设备(家电等)也很正常了。 来源:凯哥Java(kaigejava) 如上图:假设空心的是关,实心的是开。 需求: 1:给出各个家电(电灯、电视、音响等)的API,需要在这个遥控器接口中,对接这些A...原创 2019-09-02 10:03:54 · 197 阅读 · 1 评论 -
设计模式之命令模式-使用命令模式实现遥控器及总结
设计模式之命令模式-使用命令模式实现遥控器及总结 先来看看项目结构: 说明: 1:命令接口对象 2:电灯打开或关闭命令 3:音响打开或关闭命令 4:音响音量增加或减少命令 来源:凯哥Java(kaigejava) 电灯开或关代码: /** * Created by kaigejava on 2019/8/30. * 关灯的命令对象 */ public classLi...原创 2019-08-30 09:38:26 · 760 阅读 · 0 评论 -
设计模式之工厂模式-工厂方法模式
设计模式之工厂模式-工厂方法模式 大家好,欢迎来到污污弹公司,今天司小司又接到了一个新活-披萨项目。 来源:凯哥Java(kaigejava) 需求: 披萨项目: 要方便披萨品种的扩展、要便于维护、要能运行时候方便扩展 来看看披萨族设计: 司小司经过分析得到:披萨都需要烘焙(bake)、切割(cut)、包装(box)还有就是披萨原材料准备(prepare)。其中变化的就是p...原创 2019-08-27 09:43:20 · 196 阅读 · 0 评论 -
设计模式之状态模式总结篇
状态模式总结篇 状态模式总结篇,我们将从以下几个方面对状态模式进行总结。 状态模式出现的意图是什么? 通过对象内部状态发生改变进而来改变对象的行为,对象看起来好像是被修改了一样。如,没有糖果的时候(是一个状态),糖果机就不能运行了,有糖果之后(另一个状态),投币就可以出糖果了。 本文出处凯哥Java(kaigejava)讲《23种设计模》系列教程种的《状态模式总结篇》 凯哥公众号:凯...原创 2019-09-17 13:23:39 · 104 阅读 · 0 评论