随笔分类 -  设计模式

设计模式
摘要:1、什么是桥接模式 阅读全文
posted @ 2019-08-15 21:32 ZeroMZ 阅读(129) 评论(0) 推荐(0)
摘要:1、什么是门面模式 阅读全文
posted @ 2019-08-15 21:31 ZeroMZ 阅读(114) 评论(0) 推荐(0)
摘要:1、什么是策略模式 阅读全文
posted @ 2019-08-15 21:30 ZeroMZ 阅读(121) 评论(0) 推荐(0)
摘要:1、什么是命令模式 要将“处理行为”作为参数传入方法,实际是匿名实现类的实例。如Lambda表达式。 阅读全文
posted @ 2019-08-15 21:27 ZeroMZ 阅读(147) 评论(0) 推荐(0)
摘要:1、什么是代理模式 客户端代码不能或不想直接访问被调用对象,比如某个目标对象需要的功能还不足以被客户端使用,而是需要额外创建一个代理对象返回给客户端使用,这种设计方式就是代理模式。 2、典型的应用:延迟加载内嵌对象、AOP动态代理 阅读全文
posted @ 2019-08-15 20:39 ZeroMZ 阅读(100) 评论(0) 推荐(0)
摘要:1、什么是观察者模式 观察者模式定义了对象间的一对多依赖关系,让一个或多个观察者对象观察一个主题(Subject)对象。当主题对象的状态发生变化时,系统能通知所有的依赖于此对象的观察者对象,从而使得观察者对象能够自动更新。 观察者模式中,被观察的对象常常被称为目标(target)或主题(Subjec 阅读全文
posted @ 2019-08-15 17:36 ZeroMZ 阅读(140) 评论(0) 推荐(0)
摘要:1、什么是工厂方法?什么是抽象工厂? 工厂方法:为各个被依赖的对象提供一个工厂类,被依赖对象由各工厂类创建。 抽象工厂:在各被依赖对象的工厂类上再抽象一层工厂类 2、简单工厂模式与抽象工厂模式的区分 简单工厂模式:工厂直接生产被依赖对象,那就是简单工厂模式。 抽象工厂模式:工厂生产的是工厂对象,而不 阅读全文
posted @ 2019-08-15 17:34 ZeroMZ 阅读(118) 评论(0) 推荐(0)
摘要:1、什么是简单工厂模式 将多个类的对象交给工厂类来生成的设计方式被称为简单工厂模式。 2、简单工厂模式的优势 让对象的调用者和对象的创建过程分离,当对象调用者需要对象时,直接向工厂请求即可,从而避免了对象的调用者与对象的实现类以硬编码方式耦合,以提高系统的可维护性、可扩展性。 3、简单工厂模式的缺点 阅读全文
posted @ 2019-08-15 17:32 ZeroMZ 阅读(126) 评论(0) 推荐(0)
摘要:1、什么是单例模式 如果一个类始终只能创建一个实例,则这个类被称为单例类,这种模式就叫做单例模式。 2、单例模式的保障措施。 1》将类的构造器使用private修饰。 2》提供一个public修饰的static方法,供第一次产生该类的第一个对象使用。 3》该类必须缓存起已经创建的第一个对象实例,否则 阅读全文
posted @ 2019-08-15 17:30 ZeroMZ 阅读(132) 评论(0) 推荐(0)
摘要:1、单例模式 2、工厂模式 阅读全文
posted @ 2019-08-11 16:11 ZeroMZ 阅读(153) 评论(0) 推荐(0)
摘要:package com.lfy.SingletonMode; /** * @author lfy * @since 2018/06/03 * @see 单例模式除了2-5种实现方式外,还可以通过:枚举类型 或静态内部类来实现单例模式,留到后续学习 * * */ public class TestWithMultiThreading extends Thread { @O... 阅读全文
posted @ 2018-07-09 01:33 ZeroMZ 阅读(997) 评论(0) 推荐(0)
摘要:package com.lfy.SingletonMode; /** * 3、单例模式之最终版 * @author lfy * @since 2018/06/03 * @see 我们知道编译就是将源代码翻译成机器码的过程,而Java虚拟机的目标代码不是本地机器码,而是虚拟机代码。 * 编译原理里面有个过程是编译优化,就是指在不改变原来语义的情况下,通过调整语句的顺序... 阅读全文
posted @ 2018-07-09 01:32 ZeroMZ 阅读(168) 评论(0) 推荐(0)
摘要:package com.lfy.SingletonMode; /** * 3、单例模式之懒汉模式(线程安全)--双重校验锁 * @author lfy * @since 2018/06/03 * @see 这方式是线程安全的,测试看TestWithMultiThreading.java。 * 引入情景:在SingletonMode3的例子我们可以看到,synchro... 阅读全文
posted @ 2018-07-09 01:30 ZeroMZ 阅读(116) 评论(0) 推荐(0)
摘要:package com.lfy.SingletonMode; /** * 3、单例模式之懒汉模式(线程安全) * @author lfy * @since 2018/06/03 * @see 这方式是线程安全的,测试看TestWithMultiThreading.java * */ public class SingletonMode3 { //构造器私有化 p... 阅读全文
posted @ 2018-07-09 01:29 ZeroMZ 阅读(111) 评论(0) 推荐(0)
摘要:package com.lfy.SingletonMode; /** * 2、单例模式之懒汉模式(线程不安全) * @author lfy * @since 2018/06/03 * @see 这方式是线程不安全的,测试看TestWithMultiThreading.java中的测试代码 * */ public class SingletonMode2 { //... 阅读全文
posted @ 2018-07-09 01:27 ZeroMZ 阅读(83) 评论(0) 推荐(0)
摘要:package com.lfy.SingletonMode; /** * 1、什么是单例模式 * 采取一定的办法保证在整个软件系统中,单例模式确保对于某个类只能存在一个实例。有如下三个特点: ①、单例类只能有一个实例 ②、单例类必须自己创建自己的实例 ③、单例类必须提供外界获取这个实例的方法 2、单例类的设计思想 ①、外界不能创建这个类的实例,那么必须将构造... 阅读全文
posted @ 2018-07-09 01:26 ZeroMZ 阅读(111) 评论(0) 推荐(0)