![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
新手教教我
这个作者很懒,什么都没留下…
展开
-
模板方法模式(Template Method)
模板方法模式是基于继承的代码复用的基本技术。 模板方法模式需要开发抽象类和具体子类的设计师之间的协作,一个设计师负责给出一个算法的轮廓和骨架,另一些设计师负责给出这个算法的各个逻辑步骤。//抽象模板角色类public abstract class Account{ //模板方法 public final double calculateInterest() {...转载 2018-09-04 09:09:47 · 114 阅读 · 0 评论 -
行为模式----策略模式
策略模式定义了一系列算法,并将每个算法封装起来,使他们可以相互替换,且算法的变化不会影响到使用算法的客户。需要设计一个接口,为一系列实现类提供统一的方法,多个实现类实现该接口。设计一个抽象类,提供辅助函数。//抽象策略类接口public interface CarFunction{ void run();}//定义一个策略实现类的父类public class Car im...转载 2018-09-03 17:08:10 · 98 阅读 · 0 评论 -
享元模式(FlyWeight)
享元模式,又叫轻量级模式,通过共享技术有效的实现了大量细粒度对象的复用。 享元模式角色划分: FlyWeight:享元接口,定义共享接口。 ConcreteFlyWeight:具体的享元类,该类实例将实现共享。 UnShareConcreteFlyWeight:非共享享元实现类。 FlyWeightFactory:享元工厂类,控制实例的创建和共享。//享元接口类public i...转载 2018-09-03 15:38:33 · 93 阅读 · 0 评论 -
组合模式(Composite)
组合模式有时又叫整体-部分模式,在处理树形结构的问题的时候比较方便。//抽象类:Nodepublic abstract class Node{ protected String name; public Node(String name) { this.name = name; } public void addNode(Node...转载 2018-09-03 14:11:30 · 87 阅读 · 0 评论 -
桥接模式(Bridge)
桥接模式目的:将抽象化与实例化解耦,使得二者可以独立变化。 这种模式涉及到一个作为桥接的接口,使得实体类的功能独立于接口实现类,这种类型的类可被结构化的改变而互不影响。 具体来说就是一个接口,它与一方是绑定的,也就是解耦的双方中一方必然是继承这个接口,这一方就是实现方,而另一方正是要与这一方解耦的抽象方。//桥接口public interface Qiao{ void ...转载 2018-09-03 10:31:36 · 123 阅读 · 0 评论 -
备忘录模式(Memento)
备忘录模式又叫做快照模式(Snapshot Pattern)或 Token模式,是对象的行为模式。 备忘录对象是一个用来存储另外一个对象内部状态的快照的对象。备忘录模式的用意是在不破坏封装的条件下,将一个对象的状态捕捉住,并外部化,存储起来,从而可以在将来合适的时候把这个对象还原到存储起来的状态。 备忘录模式涉及的角色有三个:备忘录角色(Memento),发起人角色(Originator),负...转载 2018-09-05 09:56:19 · 102 阅读 · 0 评论 -
单例模式Singleton
2单例模式 单例模式主要是为了维持全局只有一个该类的对象实例。 对于这个不难想到不使用单例也能实现比如静态类。那这两者选择的场景可分为: 1.不需要维持任何状态,仅用于全局访问,此时更适合使用静态类 2.要维持一些特定的状态,此时更适合单例模式 单例模式又划分了很多种类,但都必须具备一下三点: 1. 单例模式只能有一个实例。 2. 单例类必须创建自己的唯一实例。 3. 单例类必须向...转载 2018-08-30 14:51:03 · 118 阅读 · 0 评论 -
命令模式(Command)
命令模式的目的就是将命令的发出者和执行者之间解耦。 我们以司令员给士兵发布指令执行为例://命令接口类public interface Command{ void action();}public class MyCommand implements Command{ private Receiver receiver; public MyComman...转载 2018-09-04 17:00:53 · 118 阅读 · 0 评论 -
责任链模式(Chain of Responsibility)
责任链模式是一种对象的行为模式,在责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条莲。请求在这个链上传递,直到链上的某个对象决定处理此请求。 既然是设计模式,必然有其鲜明代码的主体框架,如下: 首先定义一个抽象的处理角色Handler,其次是具体实现类ConcreteHandler,在ConcreteHandler我们通过getNextHandler()来判断是否还有下一个责...转载 2018-09-04 16:25:10 · 96 阅读 · 0 评论 -
迭代子模式(Iterator)
顾名思义,迭代器模式就是顺序访问集合中的对象。这句话有两层意思:一是需要遍历的对象(集合对象),二是迭代器对象,用于对集合进行遍历访问。public interface Collection{ public Iterator iterator(); //取集合对象 public Object get(int i); //取集合大小 public i...转载 2018-09-04 14:27:11 · 106 阅读 · 0 评论 -
观察者模式(Observer)
观察者模式:当一个对象发生变化的时候,其它依赖该对象的对象都会收到通知,并且随着发生变化。public interface Observer{ void update();}public class ObserverA implements Observer{ @override public void update() { Syste...转载 2018-09-04 10:37:54 · 99 阅读 · 0 评论 -
Android约束布局ConstraintLayout实现九宫格
Android约束布局ConstraintLayout实现九宫格这个实现是不能动态添加项目的,只是固定项目的九宫格,如果要动态增加item的最好还是使用GridLayout。不多说了直接上代码:<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout xmlns:an...原创 2018-09-19 15:47:50 · 1579 阅读 · 0 评论