240 发简信
IP属地:重庆
  • 《重构》读书笔记 第十一章

    处理概括关系 11.1 Pull Up Field (字段上移) 两个子类拥有相同的字段,将字段移至超类 11.2 Pull Up Method...

  • 《重构》读书笔记 第八章

    重新组织数据 8.1 Self Encapsulate Field (自封装字段) 为字段建立取值/设值函数,并且只以这些函数来访问字段 间接访...

  • 《重构》读书笔记 第七章

    在对象之间迁移数据 7.1 Move Method (搬移函数) 如果一个类有太多行为,或如果一个类与另一个类有太多合作而形成高度耦合,就需要搬...

  • 《重构》读书笔记 第三至六章

    第三章 代码的坏味道 重复代码 过长函数 过大的类 过长参数列 发散式变化(某个类经常因为不同的原因在不同的方向上发生变化) 霰弹式修改 (每遇...

  • 《重构》读书笔记 第一二章

    第一章 重构的基础: 我们需要为即将修改的代码建立一套可靠的测试环境,为了使重构的结果能够得到保证,我们需要可靠的测试方式 分解并重组: 分解和...

  • Resize,w 360,h 240
    [Android]从源码的角度理解为什么Dialog不能在Application中展示

    首先,写一个demo: 运行后,一定会报如下的错误: 这个错误是怎么来的呢,所谓的token null is not valid中的token又...

  • [Android]使用函数指针实现native层异步回调

    1. 前言 在上篇关于lambda表达式实现方式的文章中,有提到一个概念叫做MethodHandle,当时的解释是类似于C/C++的函数指针,但...

  • Resize,w 360,h 240
    [java]JVM之lambda表达式是怎么实现的

    当我们提起java lambda表达式的实现时,第一反应一定是:这就是java的语法糖啊,它实现肯定还是匿名内部类啊! 但是,事实真的是这样么?...

  • Resize,w 360,h 240
    [java]JVM之运行时常量池里到底有什么

    1. 概念 首先我们来复习一下java内存模型,java运行时数据区大概分为五块,分别是 方法区 虚拟机栈 本地方法栈 堆 程序计数器 而运行时...