08 2017 档案

摘要:命令模式是行为型设计模式之一。命令模式没那么多条条框框,所以很灵活。命令模式简单的说就是给他下一个命令,然后他就会执行和这个命令的一系列操作。例如点击电脑的关机命令,系统会执行暂停,保存,关闭等一系列的命令,最后完成关机。 命令模式也跟关机一样,将一系列方法封装为一个方法,用户只要执行这个方法就会执 阅读全文
posted @ 2017-08-26 22:06 vegatate 阅读(120) 评论(0) 推荐(0)
摘要:解释器模式概述 解释器模式是一种使用频率相对较低但学习难度较大的设计模式,它用于描述如何使用面向对象语言构成一个简单的语言解释器。在某些情况下,为了更好地描述某一些特定类型的问题,我们可以创建一种新的语言,这种语言拥有自己的表达式和结构,即文法规则,这些问题的实例将对应为该语言中的句子。此时,可以使 阅读全文
posted @ 2017-08-25 17:33 vegatate 阅读(217) 评论(0) 推荐(0)
摘要:责任链模式实战 在Android中,可以借鉴责任链模式的思想来优化BroadcastReceiver使之成为一个全局的责任链处理者。在BroadcastReceiver的分类中,有序广播是根据优先级依次传播的,指导有接受者将其终止或者所有接受者都不终止它,这与责任链模式很相近。通过它可以轻松实现一种 阅读全文
posted @ 2017-08-25 14:42 vegatate 阅读(741) 评论(0) 推荐(0)
摘要:不管你是新程序员还是老手,你一定在面试中遇到过有关线程的问题。Java 语言一个重要的特点就是内置了对并发的支持,让 Java 大受企业和程序员的欢迎。大多数待遇丰厚的 Java 开发职位都要求开发者精通多线程技术并且有丰富的 Java 程序开发、调试、优化经验,所以线程相关的问题在面试中经常会被提 阅读全文
posted @ 2017-08-24 15:43 vegatate 阅读(219) 评论(0) 推荐(0)
摘要:定义: 当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类 使用使用场景: 1.一个对象的行为取决于它的状态,并且它的状态必须在运行时根据状态改变它的行为 2.代码中包含大量与对象状态有关的条件语句,例如,一个操作中含有庞大的多分支语句 if -else且这些分支依赖该对象的状态 阅读全文
posted @ 2017-08-24 15:31 vegatate 阅读(713) 评论(0) 推荐(0)
摘要:设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模 阅读全文
posted @ 2017-08-24 14:24 vegatate 阅读(106) 评论(0) 推荐(0)
摘要:什么是链 1、链是一系列节点的集合。 2.、链的各节点可灵活拆分再重组。 职责链模式 使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系, 将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理他为止。 角色 抽象处理者角色(Handler):定义出一个处理请求的接口。 阅读全文
posted @ 2017-08-24 14:23 vegatate 阅读(190) 评论(0) 推荐(0)
摘要:何时使用 State模式在实际使用中比较多,适合“状态”的切换。因为我们经常会使用If else if else 进行状态切换,如果针对状态的这样判断切换反复出现,我们就要联想到是否可以采取State模式了。 这里要阐述的是"开关切换状态" 和" 一般的状态判断"是有一些区别的," 一般的状态判断" 阅读全文
posted @ 2017-08-24 11:32 vegatate 阅读(159) 评论(0) 推荐(0)
摘要:我每天使用 Git ,但是很多命令记不住。一般来说,日常使用只要记住下图6个命令,就可以了。但是熟练使用,恐怕要记住60~100个命令。下面是我整理的常用 Git 命令清单。几个专用名词的译名如下。Workspace:工作区Index / Stage:暂存区Repos... 阅读全文
posted @ 2017-08-22 16:34 vegatate 阅读(173) 评论(0) 推荐(0)
摘要:定义:用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。 类型:创建类模式 类图: 原型模式主要用于对象的复制,它的核心是就是类图中的原型类Prototype。Prototype类需要具备以下两个条件: 实现Cloneable接口。在java语言有一个Cloneable接口,它的作用只有 阅读全文
posted @ 2017-08-16 17:00 vegatate 阅读(149) 评论(0) 推荐(0)
摘要:模式的定义 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 使用场景 1、相同的方法,不同的执行顺序,产生不同的事件结果时; 2、多个部件或零件,都可以装配到一个对象中,但是产生的运行结果又不相同时; 3、产品类非常复杂,或者产品类中的调用顺序不同产生了不同的效能,这个时 阅读全文
posted @ 2017-08-16 16:38 vegatate 阅读(194) 评论(0) 推荐(0)
摘要:【吐槽】RecyclerView没有提供分割线的方法,想要加个线还要自己画,点击事件的监听都要自己实现,不过真的好用。 给RecyclerView添加分割线的步骤 1, 新建类继承于RecyclerView.ItemDecoration,此为是抽象类: 1 2 3 4 5 6 7 8 9 10 11 阅读全文
posted @ 2017-08-14 16:09 vegatate 阅读(296) 评论(0) 推荐(0)
摘要:Android Studio 是谷歌基于IntelliJ IDEA开发的安卓开发工具,有点类似 eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试,基于Gradle的构建支持。 最常用快捷键1.Ctrl+E,可以... 阅读全文
posted @ 2017-08-11 14:15 vegatate 阅读(152) 评论(0) 推荐(0)
摘要:1. 创建一个新项目(Create New Project) 点击File — New — New Project,把Include C++ Support前面的CheckBook勾上。 接下来的步骤跟创建普通项目一样。 2、配置C++支持功能(Customize C++ Support) 在Cus 阅读全文
posted @ 2017-08-07 14:42 vegatate 阅读(261) 评论(0) 推荐(0)
摘要:JNI总结:遵循以下步骤可以将一个本地方法链接到Java程序中 1.在Java类中声明一个本地方法 2.运行javah以获得包含该方法的C声明的头文件 3.用C实现该本地方法 4.将代码置于共享库中 5.在Java程序中加载该类库 note:一些本地代码的共享库必须先运行初始化代码。可以把初始化代码 阅读全文
posted @ 2017-08-04 15:06 vegatate 阅读(380) 评论(0) 推荐(0)