设计模式初探究
太阳石笑笑
这个作者很懒,什么都没留下…
展开
-
小白都能懂的设计模式 java版 动态代理模式 通用代理类(超详细)
将上一篇写的动态代理进行总结回顾原创 2020-11-10 09:07:10 · 144 阅读 · 0 评论 -
小白都能懂的设计模式 java版 动态代理模式 实战练习(超详细)
以之前静态代理租房为例,看动态代理如何实现:静态代理模式实战练习对了,还找到了JDK1.8一个在线文档还不错,推荐给大家:jdk1.8API文档先要了解上一节说的两个类,proxy以及InvocationHandle这一部分先写好了,后面详细解释package proxy;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;原创 2020-11-06 22:34:20 · 217 阅读 · 0 评论 -
小白都能懂的设计模式 java版 动态代理模式 基本概念介绍
动态代理模式相对比较难理解,我们将通过具体例子带大家学习一下原创 2020-11-05 09:05:39 · 129 阅读 · 0 评论 -
小白都能懂的设计模式 java版 静态代理模式再理解 实战练习(超详细)
通过具体的实践来说明下代理模式的这两点:公共事物交给代理角色,实现了业务分工公共事物发生变化是,方便集中管理原创 2020-11-03 12:07:25 · 158 阅读 · 0 评论 -
小白都能懂的设计模式 java版 静态代理模式实战练习(超详细)
静态代理:角色分析:抽象角色:一般使用接口或者是抽象类来解决真实角色:被代理的角色代理角色:代理真实角色,代理真实角色后,我们一般会做一些附属操作客户:访问代理对象的人以一个租房子的例子来讲一下静态代理模式:房客去租房子,不去直接找房东,而是通过中介来租房,中介通常会有些附加操作来看下代码:租房接口:package agent;//租房public interface Rent { public void rent();}房东对象:package agent;/原创 2020-11-03 12:02:35 · 261 阅读 · 0 评论 -
原创 小白都能懂的设计模式 java版 代理模式(总览)
为什么学习代理模式呢?这个是SpringAOP的底层代理模式分类:分为静态代理和动态代理这个是代理模式,大概模型图:后续更新原创 2020-11-02 09:01:21 · 154 阅读 · 0 评论 -
小白都能懂的设计模式 java版 桥接模式回顾总结(超详细)
具体看下桥接模式如何实现及应用场景原创 2020-10-30 09:12:44 · 144 阅读 · 0 评论 -
小白都能懂的设计模式 java版 桥接模式具体实现(超详细)
桥接模式:是将抽象部分与 实现部分分离,使他们可以队里变化,是一种对象结构型模式,又称为柄体模式或者接口模式实战一下,将品牌和类型相互分离,当有需要的时候互相组合:先写一个品牌的接口package bridge;//品牌public interface Brand { void info();}分别实现一个苹果品牌还有一个联想品牌:package bridge;//苹果品牌public class Apple implements Brand { @Overrid原创 2020-10-30 09:12:11 · 317 阅读 · 6 评论 -
小白都能懂的设计模式 java版 适配器模式 回顾总结(超详细)
适配器模式:将一个类的接口转换成客户希望的另外一个接口,Adapter模式使得原本不兼容而不在一起工作的那些类可以一起工作这个会更新~原创 2020-10-29 09:05:52 · 121 阅读 · 0 评论 -
小白都能懂的设计模式 java版 适配器模式具体实现(超详细)
适配器模式是一种结构型模式适配器模式作用:从程序的结构上实现松耦合,可以扩大整体的类结构,用来解决更大的问题适配器模式可以想象成一个USB网线转换器具体代码会更新原创 2020-10-28 10:35:31 · 163 阅读 · 0 评论 -
小白都能懂的设计模式 java版 原型模式 存在浅拷贝问题以及解决办法(超详细)
在这一节里,https://blog.csdn.net/weixin_45806131/article/details/109282894是一个浅拷贝,v1和v2同时指向date,理论上应该v2也有一个自己的date,也就是进行一个深拷贝这个会更新原创 2020-10-26 09:02:17 · 114 阅读 · 0 评论 -
小白都能懂的设计模式 java版 原型模式 原理和实战练习(超详细)
原型模式也是一种创建型模式:表示以某个东西为原型,进行拷贝这个比较简单,直接可以看代码:先写一个radio对象package prototype;import javax.xml.crypto.Data;import java.util.Date;//实现一个接口Cloneable, 重写一个方法clone()//video类public class Video implements Cloneable { private String name; private Date原创 2020-10-26 08:59:19 · 226 阅读 · 2 评论 -
小白都能懂的设计模式 java版 建造者模式 拓展小节(超详细)
上一篇的例子中https://blog.csdn.net/weixin_45806131/article/details/109235373是Build模式的常规用法,Director类在Bulider模式中具有非常重要的作用,用于指导具体构建者如何构建产品,控制调用的先后顺序,并且向调用者返回完整的产品类,但是有时候需要简化系统结构,可以把Director和抽象建造者进行结合可以通过静态内部类方式实现零件无需装配构造,这种方式更加灵活,更加符合定义比如麦当劳的套餐,服务员(具体建造者)可以随意搭配原创 2020-10-24 06:00:09 · 117 阅读 · 0 评论 -
小白都能懂的设计模式 java版 建造者模式 具体实现(超详细)
建造者:package build;//抽象的建造者,定义一些方法public abstract class Builder { abstract void bulidA(); //地基 abstract void bulidB(); //钢筋工程 abstract void bulidC(); //铺电线 abstract void bulidD(); //粉刷 //完工,得到具体的产品 abstract Product getProduc原创 2020-10-23 09:11:54 · 138 阅读 · 4 评论 -
小白都能懂的设计模式 java版 建造者模式 基本概念
建造者模式是一种创建型模式,提供了一种创建对象的最佳方式可以将一个复杂对象的构建和表示分离,使得同样的构建过程可以创建不同的表示在用户不知道对象的建造过程和细节,可以直接创建复杂对象举个例子:工厂(建造者模式):复杂制造汽车(组装过程和细节在工厂内完成)汽车购买者(用户):只需要说出产品型号(对象的类型和内容),购买可以直接使用(不需要知道汽车如何组装)这些是建造者模式的基本概念,具体的还是要通过代码实践了解更深入好了,今天先到这里~...原创 2020-10-23 08:46:38 · 70 阅读 · 0 评论 -
小白都能懂的设计模式 java版 抽象工厂模式 实战练习(超详细)
比如要生产华为手机,华为路由器,小米手机,小米路由器先写路由器和手机的接口:package abstract1;//手机产品接口public interface IphoneProduct { void start(); void shutdown(); void callup(); void sendMes();}package abstract1;//路由器产品接口public interface IRouteProduct { void原创 2020-10-22 11:02:10 · 294 阅读 · 4 评论 -
小白都能懂的设计模式 java版 抽象工厂模式 基本概念
抽象工厂模式:围绕一个超级工厂创建其他工厂,该超级工厂为其他工厂的工厂它提供了一个创建一系列相关或者相互依赖对象的接口,无需指定它们具体的类优点:具体产品在应用层的代码隔离,无需关心创建细节将一个系列产品放到一起创建缺点:规定了可能被创建产品集合,扩展新产品困难增加了系统抽象性和理解难度具体的代码会再更新好了,今天先到这里~...原创 2020-10-21 09:02:26 · 74 阅读 · 0 评论 -
小白都能懂的设计模式 java版 简单工厂模式和工厂模式小节
先看下工厂模式框图:工厂模式每次都要实现一个车工厂,不用改动原来的代码,但是代码的数量增加很多从结构复杂度:简单工厂比较简单从代码复杂度:简单工厂比较简单从编程复杂度:简单工厂比较简单从管理复杂度:简单工厂比较简单根据设计原则,使用工厂设计模式,根据实际业务,选择简单工厂模式比较方便...原创 2020-10-21 08:51:37 · 229 阅读 · 0 评论 -
小白都能懂的设计模式 java版 工厂模式实战练习(超详细)
上一节说了,简单工厂模式不满足开闭原则:https://blog.csdn.net/weixin_45806131/article/details/109153865我们再看一下,工厂模式:新建一个车工厂的接口: package methodFactory;//工厂方法模式public interface CarFactory { Car getCar();}通过实现这个接口,新建五菱和特斯拉的车工厂package methodFactory;public class W原创 2020-10-19 09:02:57 · 191 阅读 · 2 评论 -
小白都能懂的设计模式 java版 简单工厂模式实战练习(超详细)
我们原来写一个实现类:先有一个接口:package factory.simple;public interface Car { void name();}写这个接口的两个实现类:在这package factory.simple;public class Tesla implements Car { @Override public void name() { System.out.println("特斯拉"); }}package原创 2020-10-19 08:52:54 · 324 阅读 · 1 评论 -
小白都能懂的设计模式 java版 工厂模式 概念讲解
工厂模式作用:实现了创建者和调用者分离详细分类:简单工厂模式工厂方法模式抽象工厂模式满足OOP七大设计原则之:开闭原则:一个软件的实体应该对外扩展开放,对修改关闭依赖倒转原则:针对接口编程,不针对实现编程迪米特法则:只与你最直接的朋友通信,避免与陌生人通信核心本质:实例化对象不使用new,用工厂方法代替将选择实现类,创建对象统一管理和控制,从而将调用者和实现解耦...原创 2020-10-16 11:12:47 · 134 阅读 · 0 评论 -
小白都能懂的设计模式 java版 单例模式
单例模式是每个程序员都很清楚的设计模式这里先介绍三种,饿汉式单例,懒汉式单例,静态内部类,直接code,比较清晰~饿汉式单例:package shejimoshi;//饿汉式单例public class HungrySingle { //可能会浪费空间 private byte[] data1 = new byte[2024*2024]; private byte[] data2 = new byte[2024*2024]; private byte[] dat原创 2020-09-04 08:52:03 · 163 阅读 · 0 评论 -
小白都能懂的设计模式 java版 设计模式初探
设计模式本质是面向对象设计原则的实际运用,是对类的封装性,继承性,多态性以及类的关联关系和组合关系充分理解主要分为3类:创建型模式:单例模式,工厂模式,抽象工厂模式,建造者模式,原型模式结构性模式:适配器模式,桥接模式,装饰模式,组合模式,外观模式,享元模式,代理模式行为型模式:模板方法模式,命令模式,迭代器模式,观察者模式,等等我们这个系列博客会带大家学习一些常用的设计模式设计模式七大原则:开闭原则 : 对外扩展开放,对修改关闭里氏替换原则:继承保证超类的性质在子类中成立依赖倒置原原创 2020-09-02 08:58:59 · 153 阅读 · 0 评论