02-03-设计模式
yuhaibao324
一直以来我们找不到对的人,是因为我们不能改变错误的自己!
展开
-
模板设计模式
public class Demo1_Template { /** * @param args */ public static void main(String[] args) { /*long start = System.currentTimeMillis(); for(int i = 0; i < 1000000; i++) { ...原创 2019-06-18 00:22:43 · 88 阅读 · 0 评论 -
设计模式应用场景
设计模式在面试中被提到很多,程序员应该都知道常见的一些设计模式以及他的设计原理或多或少都了解。书籍或者网上有许多介绍设计模式的文章,为了便于理解通常举例都是造车子造轮子这样偏离应用的例子。作用设计模式是一种思路,是一代又一代的程序员总结出来的经验解耦,最大限度的实现代码的复用便于维护,为了加强bug的可控性,出现问题能快速定位到bug便于扩展,在后期加功能或者改...原创 2019-06-21 02:22:38 · 569 阅读 · 0 评论 -
单例设计模式:保证类在内存中只有一个对象
1、应用场景: 关闭机器 (Runtime通过查看源码就是单例模式)2、应用场景: 在指定时间安排指定任务 (Timer)/* * 饿汉式和懒汉式的区别 * 1,饿汉式是空间换时间,懒汉式是时间换空间 * 2,在多线程访问时,饿汉式不会创建多个对象,而懒汉式有可能会创建多个对象 *//* * 饿汉式*/ class Singleton { //1,私有构造方法,其...原创 2019-06-13 09:06:10 · 1220 阅读 · 0 评论 -
简单工厂
public interface Sender { void send();}public class SmsSender implements Sender { @Override public void send() { System.out.println("this is sms sender"); }}public cl...原创 2019-06-13 09:11:13 · 125 阅读 · 0 评论 -
软件设计模式
1、软件设计模式的概念及意义软件设计模式是对软件设计经验的总结,是对软件设计中反复出现的设计问题的成功解决方案的描述。为了记录这些成功的设计经验并方便以后使用,软件设计模式通常包含 4 个基本要素:模式名称、问题、解决方案以及效果。模式名称实际上就是一个帮助记忆的名称,是用于软件设计的技术术语,有助于设计者之间的交流。问题描述了设计者所面临的设计场景,用于告诉设计者在什么情况下...原创 2019-06-18 01:07:21 · 1278 阅读 · 0 评论 -
简单工厂--静态工厂方法模式
* A:简单工厂模式概述 * 又叫静态工厂方法模式,它定义一个具体的工厂类负责创建一些类的实例* B:优点 * 客户端不需要在负责对象的创建,从而明确了各个类的职责* C:缺点 * 这个静态工厂类负责所有对象的创建,如果有新的对象增加, 或者某些对象的创建方式不同,就需要不断的修改工厂类,不利于后期的维护* D:案例演示 * 动物抽象类:public abs...原创 2019-06-17 20:02:06 · 175 阅读 · 0 评论 -
工厂方法模式
* A:工厂方法模式概述 * 工厂方法模式中抽象工厂类负责定义创建对象的接口, 具体对象的创建工作由继承抽象工厂的具体类实现。* B:优点 * 客户端不需要在负责对象的创建,从而明确了各个类的职责, 如果有新的对象增加,只需要增加一个具体的类和具体的工厂类即可, 不影响已有的代码,后期维护容易,增强了系统的扩展性* C:缺点 * 需要...原创 2019-06-17 20:10:51 · 83 阅读 · 0 评论 -
适配器设计模式
* a.什么是适配器 * 在使用监听器的时候, 需要定义一个类事件监听器接口. * 通常接口中有多个方法, 而程序中不一定所有的都用到, 但又必须重写, 这很繁琐. * 适配器简化了这些操作, 我们定义监听器时只要继承适配器, 然后重写需要的方法即可.* b.适配器原理 * 适配器就是一个类, 实现了监听器接口, 所有抽象方法都重写了, 但是方法全是空的. * 适配器类需要定义...原创 2019-06-17 20:29:29 · 142 阅读 · 0 评论 -
动态代理模式 -- java动态代理(JDK和cglib)
JAVA的动态代理代理模式代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提供特定的服务。按照代理的创建时期,代理...原创 2019-06-17 20:51:33 · 133 阅读 · 0 评论 -
动态代理模式-反射
public class Demo1_Reflect { /** * @param args * @throws ClassNotFoundException */ public static void main(String[] args) throws ClassNotFoundException { Class clazz1 = Class.forNam...原创 2019-06-17 20:58:56 · 92 阅读 · 0 评论 -
设计模式汇总一、java 23种设计模式汇总
23-design-pattern计模式分为三大类1、创建型模式,共五种:1-1:单例模式—— [com.sjms.danli]1-2:工厂方法模式 —— [com.sjms.factory]1-3:抽象工厂模式 —— [com.sjms.abstractfactory]1-4:建造者模式 —— [com.sjms.builder1]、[com.sjms.buil...原创 2019-06-23 09:42:58 · 223 阅读 · 0 评论