摘要: 外观模式就是为子系统的一组接口提供了一个一致的界面,既定义一个高层接口,来简化客户端对子系统的接口方法的调用。 这样,客户端就不需要知道系统内部调用的复杂联系,只需要通过一个统一的接口与系统交互。 就像股民炒股,新手直接进行投资可能风险很大不易上手,但是如果都投入基金,将多个股民的资金汇集在一起,就 阅读全文
posted @ 2019-07-27 14:06 甜树果子二号 阅读(123) 评论(0) 推荐(0) 编辑
摘要: HTTP一些问题整理 HTTP状态码? HTTP响应的状态码指示了特定的HTTP请求是不是已经成功完成了,响应分为5类:信息响应(100-199)、成功响应(200-299)表明请求被正常处理了、重定向(300-399)表明浏览器需要执行某些特殊的处理以正确处理请求、客户端错误(400-499)表明 阅读全文
posted @ 2019-07-25 20:15 甜树果子二号 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 一、原型模式 原型模式就是从一个对象再创建另一个可定制的对象,而且不需要知道任何创建的细节。 二、基本的原型模式 这里模拟简历的创建与复制来说明原型模式的应用。 输出结果: 三、原型模式中的浅复制与深复制 上面的Resume类通过实现Cloneable接口才能使用clone方法,进行对象的克隆。 J 阅读全文
posted @ 2019-07-10 10:16 甜树果子二号 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 一、基本介绍 DataBinding数据绑定库是一种支持库,借助该库,可以使用声明性格式(而非程序化地)将布局中的界面组件绑定到应用中的数据源。这是官方给出的介绍。 那么为什么要使用DataBinding? 首先,再也不需要使用findViewById()来初始化控件了; 另外,更新UI不再需要切换 阅读全文
posted @ 2019-06-26 10:53 甜树果子二号 阅读(440) 评论(0) 推荐(0) 编辑
摘要: 一、代理模式的作用 远程代理:为一个对象在不同的地址空间提供局部代表,以此隐藏一个对象存在于不同地址空间的事实。 虚拟代理:根据需要创建开销很大的对象。通过它来存放实例化需要很长时间的真是对象。 安全代理:用来控制真实对象访问时的权限。 智能指引:当调用真实的对象时,代理处理另外一些事。 二、简单实 阅读全文
posted @ 2019-06-23 16:07 甜树果子二号 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 一、装饰模式 动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更加灵活。 将不同的装饰功能,即需要向原有类添加的功能集成于不同的类当中,让这个类包装所要修饰的对象。 那么当需要有顺序地执行特殊的行为时,就可以采用装饰模式了。 二、实现思路 阅读全文
posted @ 2019-06-23 15:28 甜树果子二号 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 一、问题 在频繁弹出toast的时候,弹出后出现延迟重叠的现象。 二、解决 Toast通常由makeTextT()方法实例化,如何不想要toast弹出时重叠,那么只需在应用中保持一个Toast对象即可,如果文本内容需要改变,通过setText()方法设入。 封装如下: public class To 阅读全文
posted @ 2019-06-22 21:33 甜树果子二号 阅读(556) 评论(2) 推荐(0) 编辑
摘要: 一、单一职责原则:一个类承担的职责过多会造成耦合,导致一个职责的变化会对其他职责的能力产生影响,应该尽量根据功能将类进行划分。 二、开-闭原则:对于频繁变化的部分应将相同的部分抽取出来,对于这部分尽量不去改变,对于扩展开放,对于更改封闭。 三、依赖倒转原则:高层模块不应依赖低层模块,而都应依赖抽象; 阅读全文
posted @ 2019-06-06 13:09 甜树果子二号 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 一、策略模式: 如果说简单工厂模式对对象分类, 那么策略模式就是对相似逻辑算法分类, 将算法的切换变成一个目标可变的行为, 由策略决定行为。 二、基本思路: 1.创建策略抽象类,定义所有支持的算法的公共接口; 2.继承抽象类,策略具体化; 3.定义Context类作为上下文承接的角色,是使用了某种策略的类,通过策略改变自身行为。三、简单样例: 以简单收银软件为例,灵活解决原价、打折... 阅读全文
posted @ 2019-06-05 22:10 甜树果子二号 阅读(142) 评论(0) 推荐(0) 编辑