
设计模式
阿劲要努力
b站同名
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【设计模式】代理模式
静态代理 和 动态代理 静态代理 1.抽象角色:一般会使用接口或者抽象类类解决 // 租房 public interface Rent { public void rent(); } 2.真实角色:被代理的角色 // 真实对象:房东 --> 需要完成租房的工作 public class Host implements Rent{ @Override public void rent() { System.out.println("房东要出租房子"原创 2021-11-06 20:24:55 · 94 阅读 · 0 评论 -
【设计模式】桥接模式
个人感觉就是定义一个主类充当桥,把多个子类组合(连接)起来,形成一个复杂的类。 以不同类型电脑为例:台式电脑,笔记本电脑,平板电脑 那不同品牌就有不同品牌的产品,这里的先定义一个品牌接口用于扩展子类的方法,然后品牌进行实现: // 品牌 public interface Brand { void info(); } // 联想品牌 public class Lenovo implements Brand{ @Override public void info...原创 2021-11-03 10:36:03 · 82 阅读 · 0 评论 -
【设计模式】适配器模式
结构性模式的一种,用于实现松耦合,主要是可以:将一个类的接口 转换成 用户希望的另一个接口,适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。 可以分为两种:类适配器,对象适配器 角色有:目标接口(用户想要的接口/抽象类)、需要适配的类(被适配的类)、适配器(把原接口转成目标对象) 抽象成usb转接网线口的场景 对于,类适配器首先是 只有网线和usb口,没有网线口,有一个上网的请求,需要对网线进行适配。此时,先对转接口进行抽象定义方法,然后在adapter中通过继承被适配器的方法原创 2021-11-02 22:18:26 · 103 阅读 · 0 评论 -
【设计模式】原型模式
原型模式比较简单,主要是对深克隆方法进行改写 假设有一个类 * * 1.实现接口 cloneable * 2.重写一个方法 * */ // Video public class Video implements Cloneable{ private String name; private Date createTime; @Override protected Object clone() throws CloneNotSupportedException { /原创 2021-11-02 17:10:51 · 398 阅读 · 0 评论 -
【设计模式】建造者模式
跟上两篇的类型一样,属于创建型模式,主要是可以将一个复杂对象的构建和它的表示分离,使得同样的构建过程可以创建不同的表示。 首先帮助理解的例子:建房子 先定义抽象类Builder,定义抽象的流程,以及返回产品 // 抽象的建造者:流程 public abstract class Builder { abstract void buildA(); // 铺地基 abstract void buildB(); // 钢筋工程 abstract void buildC(); // 铺原创 2021-11-02 14:50:00 · 119 阅读 · 0 评论 -
【设计模式】工厂模式
分类:简单工厂模式,工厂方法模式,抽象工厂模式 作用: 实现创建者和调用者分离 本质:实例化对象不适用new 用工厂方法代替,将调用者和实现类解耦 首先是简单工厂模式(静态工厂模式) // 工厂类 接口 public interface Car { void name(); } // 实现类 public class Wuling implements Car { @Override public void name(){ System.out.pri原创 2021-11-02 09:58:52 · 82 阅读 · 0 评论 -
【设计模式】单例模式
只要是单例模式,就要构造器私有 使用饿汉式单例会有浪费空间的可能 // 饿汉式单例 public class Hungry { // 这里没用到,每次单例实例化 可能会浪费空间 private byte[] data = new byte[1024*1024]; private Hungry(){ } private final static Hungry HUNGRY = new Hungry(); public static Hungry原创 2021-11-01 11:02:33 · 88 阅读 · 0 评论