摘要: 0、背景 加入一个手机分为多种款式,不同款式分为不同品牌。这些详细分类下分别进行操作。 如果传统做法,需要将手机,分为不同的子类,再继续分,基本属于一个庞大的多叉树,然后每个叶子节点进行相同名称、但是细节不同的功能实现。 问题: 类爆炸:类的增加基本没有任何优化,多一个就要妥妥的增加类; 违反单一原 阅读全文
posted @ 2020-08-15 10:56 Life_Goes_On 阅读(304) 评论(0) 推荐(1) 编辑
摘要: 适配器模式的工作原理: 将一个类的接口转换为另一种接口,让原本接口不兼容的类可以兼容。 从用户的角度是看不到适配器的,是解耦的;用户调用的是适配器转化后的目标接口方法,适配器再调用被适配者的相关接口方法。(比如用户只用type-C,要的是这个口给出的5v电压,而适配器去插插孔),这样对于用户来说,只 阅读全文
posted @ 2020-08-14 09:44 Life_Goes_On 阅读(1123) 评论(0) 推荐(1) 编辑
摘要: 0、背景 建造模式(Builder模式) 假如有一个需求:盖房子,盖房子过程是一致的:打桩、砌墙、封顶。但是房子是各式各样的,最后盖出来的房子可能是高楼或别墅。 根据直接的思路,不用设计模式思想,我们也许会: 写一个 CommonHouse 抽象类,然后里面规定了打桩、砌墙、封顶三个方法; 让不同房 阅读全文
posted @ 2020-08-14 09:28 Life_Goes_On 阅读(806) 评论(0) 推荐(2) 编辑
摘要: 0、介绍 线程:多个任务同时进行,看似多任务同时进行,但实际上一个时间点上我们大脑还是只在做一件事情。程序也是如此,除非多核cpu,不然一个cpu里,在一个时间点里还是只在做一件事,不过速度很快的切换,造成同时进行的错觉。 多线程: 方法间调用:普通方法调用,从哪里来到哪里去,是一条闭合的路径; 使 阅读全文
posted @ 2020-08-12 17:13 Life_Goes_On 阅读(1477) 评论(0) 推荐(4) 编辑
摘要: 0、背景 克隆羊问题:有一个羊,是一个类,有对应的属性,要求创建完全一样的10只羊出来。 那么实现起来很简单,我们先写出羊的类: public class Sheep { private String name; private int age; private String color; //下面 阅读全文
posted @ 2020-08-12 15:54 Life_Goes_On 阅读(325) 评论(0) 推荐(0) 编辑
摘要: 0、介绍 给一个背景:一个pizza订购项目,pizza本身的种类要便于扩展和维护,那么种类很多、制作过程也不少、还要完成订购的功能。 按照一般的思路,类图设计如下: 其中: Pizza类按照面向对象的设计思路,制作过程对应的方法在其中实现; 由于需要不同的类型 Pizza,而在 prepare 步 阅读全文
posted @ 2020-08-11 11:13 Life_Goes_On 阅读(494) 评论(2) 推荐(0) 编辑
摘要: 一、饿汉式(静态常量) 这种饿汉式的单例模式构造的步骤如下: 构造器私有化;(防止用new来得到对象实例) 类的内部创建对象;(因为1,所以2) 向外暴露一个静态的公共方法;(getInstance) 示例: class Singleton{ //1私有化构造方法 private Singleton 阅读全文
posted @ 2020-08-11 10:56 Life_Goes_On 阅读(1094) 评论(2) 推荐(3) 编辑
摘要: 七大原则: 单一职责原则; 接口隔离原则; 依赖倒转原则; 里氏替换原则; 开闭原则ocp; 迪米特法则; 合成复用原则。 设计模式其实包含了面向对象的精髓,封装、继承、多态。 一、单一职责原则 对于类来说,一个类应该只负责一项职责。 假设A负责两个不同的职责1和2,如果1的内容需要改变,影响了2, 阅读全文
posted @ 2020-08-08 11:17 Life_Goes_On 阅读(823) 评论(0) 推荐(1) 编辑
摘要: 一、IP协议 1.1 背景 网络层一般有两种服务: 一种是面向连接的虚电路服务,能够保证可靠通信,建立虚电路连接,然后通过这个连接发送分组,完了后释放虚电路。 另一种是无连接的数据包服务,走什么路经都随便,但是为了到达目的地必须携带目的主机的地址,虽然如此,发送的分组还是可能误码、丢失、重复或者乱序 阅读全文
posted @ 2020-08-06 17:31 Life_Goes_On 阅读(602) 评论(0) 推荐(0) 编辑
摘要: 一、HTTP定义 HTTP是Hyper Text Transfer Protocol 超文本传输协议 的缩写。用于从WWW服务器传输超文本到本地浏览器的传送协议,是一个无状态的协议。 通常承载于TCP协议之上,有时也承载于TLS或SSL协议层之上,这个时候,就成了我们常说的HTTPS。 默认HTTP 阅读全文
posted @ 2020-08-05 16:47 Life_Goes_On 阅读(1266) 评论(0) 推荐(0) 编辑