Huyuxin's Blog


  • 首页

  • 归档

(设计模式)职责链模式

发表于 2017-09-24
第七篇:职责链模式 什么是职责链模式关于职责链模式GOF是这样定义的:使多个对象都有机会处理请求,从而避免了请求的发送者和接受者之间额耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有对象处理它为止。 简易实现Talk is cheap,我们来看下最为简易的职责链实现。抽象的处理者: ...
阅读全文 »

(Android优化)使用SparseArray和ArrayMap代替HashMap

发表于 2017-09-18
在Android开发时,我们使用的大部分都是Java的api,比如HashMap这个api,使用率非常高,但是对于Android这种对内存非常敏感的移动平台,很多时候使用一些java的api并不能达到更好的性能,相反反而更消耗内存,所以针对Android这种移动平台,也推出了更符合自己的api,比如 ...
阅读全文 »

(设计模式)状态模式

发表于 2017-09-17
第六篇:状态模式 什么是状态模式当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。 很多人都会疑问状态模式和策略模式的区别在哪?实际上状态模式和策略模式很相似,甚至他们的UML图都是一致的,那么他们的区别在哪呢?我们再来回想下策略模式, 策略模式:创建一个策略的抽象, ...
阅读全文 »

Java多线程(一)

发表于 2017-09-06
突然整理这篇博客是同事碰到个多线程的问题,问我可我没回答上来。java多线程是面试必问,也是一个讲不完的话题,下面是一些我整理的知识点。加油! 进程与线程进程和线程都是系统的调度单位,但是相对于进程,线程则是系统调度的最小单位。对于一个程序来说,一个程序存在一个进程,但是可以存在多个线程,当进程 ...
阅读全文 »

匿名内部类

发表于 2017-08-31
在java提高篇—–详解内部类中对匿名内部类做了一个简单的介绍,但是内部类还存在很多其他细节问题,所以就衍生出这篇博客。在这篇博客中你可以了解到匿名内部类的使用、匿名内部类要注意的事项、如何初始化匿名内部类、匿名内部类使用的形参为何要为final。 一、使用匿名内部类内部类 匿名内部类由于没有 ...
阅读全文 »

(设计模式)策略模式

发表于 2017-08-30
第五篇:策略模式 什么是策略模式 策略模式属于对象的行为模式。其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。策略模式还是很简单的就不写了,转载一篇很不错的^_^ 策略模式的结构 策略模式是对 ...
阅读全文 »

(设计模式)工厂模式

发表于 2017-08-24
第四篇:工厂模式 我们通常使用new来创建一个新的对象,但是也随之带来一系列问题,比如,许多复杂对象的创建需要一定的步骤,在创建对象的时候需要依赖别的对象,直接在ClassA 中创建ClassB的对象,那么代码的耦合强太高。 什么是工厂模式工厂模式分为: 简单工厂模式(静态工厂模式) 工厂方 ...
阅读全文 »

(设计模式)原型模式

发表于 2017-08-22
第三篇:原型模式 什么是原型模式定义:用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象.原型模式顾名思义也就是说是有一个样板的,以这个样板为原型.开发者从这个样板对象中复制出一个内部属性一致的对象.原型模式多用于创建复杂的或者构造耗时的对象,因此使用原型模式可以使得应用程序运行更加的 ...
阅读全文 »

(设计模式)建造者模式

发表于 2017-08-17
第二篇:建造者模式 什么是建造者模式建造者模式是一步一步创建一个复杂对象,允许用户不了解细节的情况下精细的控制对象的构造过程。使得复杂对象的构建与他的表示相分离,同样的构造过程可以创建不同的表示。 经典模式在生活中我们经常买票,各种各样的票,我们这里要创建一个可以售卖多种票的程序。首先是产品Pr ...
阅读全文 »

(设计模式)单例模式

发表于 2017-08-14
第一篇:单例模式 单例模式是大家最为熟悉的设计模式也是大多数程序员接触的第一种设计模式,但是要真的去全面了解一波单例模式还是要点时间. 什么是单例:确保某一个类在全局只有一个实例,最为常见的的场景就是全局变量以及全局的工具类,重复创建带来资源与性能的浪费.那么创建单例模式需要注意什么呢? 重写 ...
阅读全文 »
12345
huyuxin

huyuxin

打渔还是晒网,这是一个问题

47 日志
11 标签
GitHub E-Mail
© 2015 — 2018 huyuxin
由 Hexo 强力驱动
|
主题 — NexT.Mist v5.1.4