自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 并发编程线程基础(一)

并发编程线程基础(一)1.1 什么是线程这种老生常谈的问题在这里简单说一下啊,线程是操作系统调度的最小单元,也叫作轻量级进程。 在一个进程中可以创建多个线程,这些线程都应有各自的计数器、堆栈和局部变量等属性,并且都能够访问共享的内存变量。1.2 线程的状态 1. New ,新创建状态。线程被创建,还没有调用start方法,在线程运行之前还有一些基础工作要做。 2. Runnable,...

2019-01-07 23:13:48 132

原创 代理模式

代理模式定义 : 为其他对象提供一种代理以控制对这个对象的访问。代理模式的使用场景当无法或不想直接访问某个对象或访问某个对象存在困难时可以通过一个代理对象来间接访问,为了保证客户端使用的透明性,委托对象与代理对象需要实现相同的接口。静态代理来看一组例子 小明现在想买一辆车但是车的种类太多了小明对车也不是很了解 所以小明打算找个代理去买车。//买车的接口publ...

2018-08-22 22:55:22 136

原创 迭代器模式

迭代器模式迭代器模式又称为游标模式,是行为型设计模式之一。迭代器模式算是一个比较古老的设计模式,其源于对容器的访问,比如List、Map、数组等,我们知道对容器的访问必然会涉及到遍历算法,我们可以将遍历的方法封装在容器中,或者不提供遍历算法。如果我们将遍历的方法封装到容器中,那么对于容器类来说就承担了过多的功能,容器类不仅要维护自身内部的数据元素而且还要对外提供遍历的接口方法,因为遍历状...

2018-08-22 07:49:49 185

原创 观察者模式

# 解决、解耦的钥匙——观察者模式 #定义 定义对象间一种一对多的依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都回得到通知并被自动更新。使用场景 (1)关联行为场景,需要注意的是,关联行为是可拆分的,而不是“组合”关系 (2)事件多级触发场景 (3)跨系统的消息交换场景,如消息队列、事件总线的处理机制简单实现现在有一家超市弄了一个即使通知系统...

2018-08-13 22:23:56 124

原创 责任链模式

责任链模式定义 使多个对象都有机会处理请求,从而避免了请求的发送者和接收者之间的耦合关系。 将这些对象连城一条链传递该请求直到有对象处理它为止。责任链模式的使用场景对个对象可以处理同一请求,但具体由哪个对象处理则在运行时动态决定。在请求处理者不明确的情况下向多个对象中的一个提交一个请求。需要动态指定一组对象处理请求通过一个简单的例子来看看责任链模式的简单实现我们在公...

2018-08-12 17:12:34 143

原创 状态模式

随遇而安–状态模式定义 当一个对象的内在状态改变时允许改变其行为,这个对象看起来是改变了其类。使用场景 (1)一个对象的行为取决于它的状态,并且他必须在运行时根据状态改变它的行为。 (2)代码中包含大量与对象状态有关的条件语句,例如,一个操作中含有庞大的多分支语句 (if-else或switch-case)且这些分支依赖于该对象的状态。 状态模...

2018-08-11 00:00:54 518 1

原创 策略模式

策略模式 的简单理解定义 策略模式定义了一系列算法并将每个算法封装起来,而且使它们还可以相互替换。策略模式 让算法独立于使用它的客户而独立变化。策略模式的使用场景:(1)针对同一类型问题的多种处理方式,仅仅是具体行为有差别时。(2)需要安全地封装多种同一类型的操作时。(3)出现同一抽象类有多个子类,而又需要使用if-else 或者 使用switch来选择具体子类时。策略模...

2018-08-07 23:26:14 148

原创 抽象工厂模式

工厂模式(二) 抽象工厂模式定义 为创建一组相关或者是相互依赖的对象提供一个接口。而不需要指定他们的具体类。抽象工厂模式的类繁多分为4类:(1)抽象工厂角色 他声明了一组用于创建一种产品的方法,每一个方法对应一种产品。(2) 具体工厂角色 他实现了在抽象工厂中定义的创建产品的方法,生成一组具体产品这些产品构成一个产品种类(3) 抽象产品角色 他为每种产品声明接口(4) 具体产...

2018-08-01 07:40:52 120

原创 简单工厂

工厂方法模式(一) 简单工厂模式定义 定义一个用于创建对象的接口,让子类去决定实例化哪个类。在任何需要生成复杂对象的地方呢 都可以使用工厂模式。复杂对象适合使用工厂模式,用new 就可以完成创建的对象无需使用工厂模式。我们来看一下使用工厂模式的代码 //抽象工厂public abstract class Factory { /** * 工厂类...

2018-07-31 23:41:30 88

原创 原型模式

原型模式–使程序运行更高效 定义 用原型实例指定创建对象的种类,并通过拷贝这些原创型创建新的对象。 原型模式的使用场景 (1) 类初始化需要消耗很多资源,这个资源包括数据、硬件资源等,通过原型拷贝避免这些消耗。 (2) 通过new产生一个对象需要非常繁琐的数据准备或者访问权限,这时可以使用原型模式 (3) 一个对象需要提供给其他对象访问,而且各个调用者可...

2018-07-29 23:52:01 93

原创 Builder模式简单理解

Builder 模式Builder模式 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。那么Builder模式的用场景呢?(1) 相同的方法,不同的执行顺序,产生不同的事件结果时。(2) 多个部件或零件,都可以装配到一个对象中。但是产生的运行结果又不相同时。(3) 产品类非常复杂,或者产品类中的调用顺序不同产生了不同的作用,这个时候使用建造者模式非常合适。(...

2018-07-25 07:54:58 11493

原创 面向对象六大原则

最近在工作中发现自己对设计模式是一知半解,打算认真看一下设计模式相关的书籍,并做一些记录与大家分享(不要嫌弃我写的不好,因为现在的我确实很菜)。先来看面向对象的六大原则吧(一) 单一职责原则(二) 开闭原则(三) 里氏替换原则(四) 依赖倒置原则(五) 接口隔离原则(六) 迪米特原则单一职责原则 定义 : 就一个类而言,应该仅有一个引起它变化的原因。简单的讲呢...

2018-07-22 19:16:42 147

原创 JVM复习

1、JVM启动流程2 、JVM基本结构 PC寄存器 – 每个线程拥有一个PC寄存器 – 在线程创建时 创建 – 指向下一条指令的地址 – 执行本地方法时,PC的值为undefined 方法区 – 保存装载的类信息 类型的常量池 字段,方法信息 方法字节码 – 通常和永久区(Perm)关联在一起 Java栈 – 线程私有 – 栈

2017-12-02 00:22:03 200

原创 ARouter--简单且好用的Android路由框架

我们开发时使用最多的就是页面的跳转,现在使用的方案一般是显示Intent和隐式intent.

2017-03-15 00:06:49 4506 1

原创 安卓项目中用到的websocket

最近上的一个新项目需要用到socket通信。之前对于socket也是一知半解,到项目中还真是不够看的哭。再次之前一直只知道用socket但是对于websocket了解不是很深。以为服务端用websocket而移动端用socket也能连接,这就坑了按照这种思路调了一上午也没通,只好去查资料才发现错的离谱。先说一下socket和websocket的区别吧,查了N多资料就总结出一句话websocket和

2017-03-10 14:50:55 1284

原创 安卓中测量控件的高度

我们很多次测量控件高度和宽度都是0这里有个方法和大家分享出来直接上代码:View view = View.inflate(getApplicationContext(),R.layout.activity_personal_person_data, null);int Kw = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.

2016-01-03 21:20:28 1340

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除