随笔分类 -  java设计模式

摘要:创建型 工厂方法:隔离创建对象的细节,使得创建对象的行为可扩展 抽象工厂:该模式抽象出一组相关对象的接口 建造者:与工厂不同的是,该模式包含了对象构造的若干过程 原型:用于以某个对象为模子创建一个新对象的场景,例如幻灯片中的母版与普通页、对象的克隆 单例 结构型 适配器:处理遗留系统的不二法宝,也可 阅读全文
posted @ 2023-09-27 08:39 Adom_ye 阅读(9) 评论(0) 推荐(0) 编辑
摘要:问题引入 天气预报项目需求,具体要求如下: 1、气象站可以将每天测量的温度、湿度、气压等以公告的形式发布出去(比如发布到自己的网站或第三方) 2、需要设计开放型API,便于其他第三方也能接入气象站获取数据 3、提供温度、气压和湿度接口 4、测量数据更新时,要能实时的通知给第三方 方案一 通过对气象站 阅读全文
posted @ 2020-09-09 16:07 Adom_ye 阅读(168) 评论(0) 推荐(0) 编辑
摘要:基本介绍 1、代理模式:为一个对象提供一个替身,以控制这个对象的访问.即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能. 2、被代理对象可以是远程对象、创建开销大的对象或需要安全控制的对象 3、代理模式有不同的形式,主要有三种静态代理、 阅读全文
posted @ 2020-09-09 15:40 Adom_ye 阅读(156) 评论(0) 推荐(0) 编辑
摘要:问题引入 星巴克咖啡订单项目 1、咖啡/单品咖啡:Espresso(意大利浓咖啡)、ShortBlack、LongBlack(美式咖啡)、Decaf(无因咖啡) 2、调料:Milk、Soy(豆浆)、Chocolate 3、要求在扩展新的咖啡种类时,具有良好的扩展性、改动方便、维护方便 4、使用oo来 阅读全文
posted @ 2020-09-09 15:09 Adom_ye 阅读(147) 评论(0) 推荐(0) 编辑
摘要:问题引入 豆浆制作问题 编写制作豆浆的程序 1、制作豆浆流程:选材--》添加配料--》放到豆浆机打磨 2、通过添加不同的配料,可以制作不同口味的豆浆 3、选材、浸泡和放入豆浆机这几个步骤对于制作每种口味的豆浆都是一样的 模版方法模式 基本介绍 1、模版方法,又叫模版方法模式,在一个抽象类公开定义了指 阅读全文
posted @ 2020-09-09 14:51 Adom_ye 阅读(164) 评论(0) 推荐(0) 编辑
摘要:现实生活中的适配器例子--多功能转换插头 基本介绍 1、适配器模式将某个类的接口转换成客户端期望的另一个接口表示,主要目的是兼容性,让原本因接口不匹配不能在一起工作的两个类可以协同工作,、 2、适配器模式属于结构型模式 3、主要分:类适配器模式、对象适配器模式、接口适配器模式 工作原理 1、适配器模 阅读全文
posted @ 2020-08-20 09:35 Adom_ye 阅读(142) 评论(0) 推荐(0) 编辑
摘要:引出问题 1、需要建房子:打桩、砌墙、封顶 2、房子各种各样,比如普通房、高楼等 3、请编写重新,完成需求 传统方法解决盖房需求 思路分析 代码 public abstract class AbstractHouse { //打地基 public abstract void buildBasic() 阅读全文
posted @ 2020-08-20 09:09 Adom_ye 阅读(173) 评论(0) 推荐(0) 编辑
摘要:原型模式 克隆羊问题 现在有一只羊,姓名为tom,年龄为1,颜色为白色,请编写程序创建和tom羊属性完全相同的10只羊. 传统方法解决克隆羊问题 思路分析 代码 Sheep public class Sheep { private String name; private int age; priv 阅读全文
posted @ 2020-08-20 09:02 Adom_ye 阅读(123) 评论(0) 推荐(0) 编辑
摘要:工厂模式 工厂模式属于创建型模式.提供了一种创建对象的最佳方式. 介绍 定义一个创建对象的接口,让其子类自己决定实例化哪一工厂类,工厂模式使其创建过程延迟到子类进行. 应用实例一 您需要一辆汽车,可以直接从工厂里面提货,而不用去管这俩汽车是怎么做出来的,如果想新增一个产品,只有扩展一个工厂类就可以, 阅读全文
posted @ 2020-08-19 06:06 Adom_ye 阅读(119) 评论(0) 推荐(0) 编辑
摘要:单例模式介绍 所谓单例模式,就是采取一定的方法保证在整个的软件系统中,只能存在一个对象实例,并且该实例只提供一个取得其对象实例的方法(静态方法) 单例模式有八种方法 1、饿汉式(静态常量) 2、饿汉式(静态代码块) 3、懒汉式(线程不安全) 4、懒汉式(线程安全,同步方法) 5、懒汉式(线程安全,同 阅读全文
posted @ 2020-08-14 07:06 Adom_ye 阅读(145) 评论(0) 推荐(0) 编辑
摘要:问题:编写代码过程中,程序员面临着来自耦合性,内聚性以及可维护性,可扩展性,重用性,灵活性等挑战. 设计模式的好处 1、提到代码重用性(即,相同代码,不用多次编写) 2、可读性(即,编程规范性,便于其他程序员的阅读和理解) 3、可扩展性(即,当需要增加新的功能时,非常的方便,称为可维护性) 4、可靠 阅读全文
posted @ 2020-08-08 16:15 Adom_ye 阅读(204) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示