- 博客(12)
- 资源 (3)
- 收藏
- 关注
原创 经典文章集合
double精度计算 http://www.cnblogs.com/mingforyou/p/3344489. html 侧滑菜单DrawerLayout http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/0925/1713.html 解决DrawerLayout以及vie
2016-05-23 23:41:24 659
原创 handler的内部实现
handler的内部基本上可以分为四部分 一 Message对象创建 handler.obtainMessage(),在底层是调用的Message.obtain方法,如果消息池中有Message对象,就直接调用,如果为空,才new Message()进行创建. 消息队列中的顺序是由消息本身维护的,消息队列中的消息是类似单链表的结构,每个消息对象都有一个next属性,指向下一个消息.
2016-05-23 23:37:22 473
原创 设计模式学习--迭代器模式
迭代器模式:提供一种方法循序访问一个容器对象中的各个元素,而又不暴漏该对象的内部表示 迭代器模式又称为游标模式,其源于对容器的访问,比如list map 数组等,我们知道对容器对象的访问必然涉及遍历算法,我们可以将遍历的方法封装找容器中,或者不提供遍历方法. 如果我们将遍历的方法封装到容器中,那么对于容器类来说就承担了过多的功能,容器类不仅要维护自身内部的数据元素而且还有对外提供遍历的接
2016-05-23 23:33:10 250
原创 设计模式学习--适配器模式
适配器模式:吧一个列的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法一起工作的两个类能够在一起工作 使用场景: 系统需要使用现有的类,而此类的接口不符合系统的需要,即接口不兼容 想要简历一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的类一起工作 需要一个统一的输出接口,而输入端的类型不可预知 例如ListView中的
2016-05-22 23:00:30 215
原创 设计模式学习--访问者模式
访问者模式:封装一些作用于某种数据结构中的各元素的操作,它可以在不改变这个数据结构的前提下定义作用于这些元素的新的操作 访问者模式是一种将数据操作与数据结构分离的设计模式,其基本想法是软件张拥有一个由许多对象构成的,比较稳定的对象结构,这些对象中的类都拥有一个accept方法用来接受访问者的访问.访问者是一个接口,它拥有一个visit方法,这个方法对访问到的对象结构中不同类型的元素作出不
2016-05-19 00:07:23 263
原创 设计模式学习--状态模式
状态模式: 当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类 状态模式中的行为时有状态来觉得的,不同的状态下有不同的行为.状态模式和策略模式的结构几乎完全一样,但是他们的目的和本质却完全不一样,状态模式的行为是平行的,不可替代的,策略模式的行为是彼此独立,可相互替换的. 状态模式吧对象的行为包装在不同的状态对象里,每一个状态对象都有一个共同的抽象状态基类,状态模式的
2016-05-17 23:29:38 228
原创 反射
重新复写下反射的知识 反射:动态的获取指定的类以及动态的调用类中的内容 应用场景:该应用程序已写好,后期出现的接口子类无法直接在该应用程序中用new创建对象. 既然子类不确定,可以通过对外提供配置文件的形式,将不确定的信息存储到配置文件中即可.该程序只要之前写好如何读取配置文件信息即可.如果存储了指定的子类名,就根据具体的名称找到该类并进行加载和对象的创建,这些动作都是在前期定义软件时写好的,
2016-05-16 23:58:16 327
原创 设计模式学习--备忘录模式
备忘录模式:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可以将该对象恢复到原先保存的状态 Originator:发起人,负责创建一个备忘录Memento,用以记录当前时刻他的内部状态,并可使用备忘录恢复内部状态, Originator可根据需要觉得Memento存储Originator的那些内部状态 Memento:备忘录,负责存储Origin
2016-05-15 23:52:12 365
原创 设计模式学习--设计原则
单一职责原则: 就一个类而言,应该仅有一个引起他变化的原因 如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能来,这种耦合会导致脆弱的设计,当变化发生时,设计会遭受意想不到的破坏 如果你能想到多于一个的动机去改变一个类,那么这个类就具有多余一个的职责,就应该考虑类的职责分离 开放封闭原则: 就是谁软件实体可以扩展,但是不可修改
2016-05-04 23:55:59 308
原创 设计模式学习--桥接模式
桥接模式: 将抽象部分与他的实现部分分离,是他们都可以独立的变化. 任何多维度变化类或者多个树状类之间的耦合都可以使用桥接模式来实现解耦 如果一个系统需要在构件的抽象化角色和具体角色之间增加更多的灵活性;避免在两个层次之间建立静态的继承联系,可以通过桥接模式事他们在抽象层建立一个管理关系 对于那些不希望使用继承或因为多层次继承导致系统类的个数极具增加的系统,也可以考虑使用桥接模式
2016-05-04 00:19:05 240
原创 设计模式学习--组合模式
组合模式:将对象组合成树形结构以表示"部分-整体"的层次结构,组合模式使用用户对单个对象和组合对象的使用具有一致性 但需求中是体现部分与整体层次的结构时,以及希望用户可以忽略组合对象与单个对象的不同,统一地使用组合结构中的所有对象时,就应该考虑用组合模式了 基本对象可以被组合成更负责的组合对象,而这个组合对象又可以被组合,这样不断递归下去,客户代码中,任何用到基本对象的地方都可以使用组
2016-05-03 00:03:55 232
原创 设计模式学习--建造者模式
建造者模式:将一个复杂对象的构建与他的表示分离,使得同样的构建过程可以创建不同的表示 使用场景 相同的方法,不同的执行顺序,产生不同的时间结果时, 多个部件或零件,都可以装配到一个对象中,但是产生的运行结果又不相同时 产品类非常复杂,或者产品类中的调用顺序不同产生了不同的作用 当初始化一个对象特别复杂,如参数多,且很多参数都具有默认值时 建造者模式是在当创建复杂对象的
2016-05-02 19:04:52 187
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人