随笔分类 - 读书笔记
摘要:目标:通过面向切面编程来实现对源代码无侵入的埋点。 方式 能力 缺点 学习曲线 XPosed 运行期hook 能hook自己应用进程的方法; 能hook别的应用的方法; 能hook系统方法; 1,手机需要root; 2, 依赖三方包的支持,碎片化严重兼容性差; 一般 DexPosed 运行期hook
阅读全文
摘要:不管是修改还是新建文件,都必须通过git add把这次修改从工作区加到暂存区; commit只是提交暂存区的修改,还没add到暂存区处于工作区的修改是不会commit的; git checkout可以将工作区的文件用暂存区的文件去替换掉,用于没commit之前; git reset —mixed可以
阅读全文
摘要:看某节目上有个观点,大概意思是:中国人缺乏创造力,没什么创新,但勤奋又好学,很会看懂别人的东西,并且很快能复制出来,并且能很快变换适应国内用户,然后在国内战胜国外产品赢得用户。 我略赞同这个观点,因为从互联网到移动互联网和互联网金融,国内基本没有自己创新的产品出来,无论是门户,搜索,社区,团购,支付
阅读全文
摘要:团队从Eclipse迁移到Android Studio之后,也从SVN迁移到Git了。 一直忙于需求迭代无暇做迁移,现在才开始做,相见恨晚,好东西,高大上,词穷。 回顾和记录一下git的一些基本操作。下面完成这样一个流程: 远程机器创建git仓库 --> 本地机器创建git仓库 -->从本地仓库推代
阅读全文
摘要:《支付战争》一书讲的虽然是2000前后的paypal的发展以及和ebay pk最后被ebay收购的故事,但时至今日,看最近几年和现在的一些互联网产品的发展历程,是何其相似,总结一下这些特点包括: 1, 做的产品是创造一个新的行业,给人们新的生活方式,会扰乱旧的格局,淘汰落后生产力,普通大众不习惯不相
阅读全文
摘要:11年前后团购大战的时候,我觉得团购是个昙花一现的模式,不会持久,后来大片团购网站倒下,证明了我这个看法。 但看了《九败一胜》这本书,觉得当年团购网站纷纷倒台,是团购行业的泡沫破灭,并不是团购这个模式不会持久,相反,我现在觉得团购模式会很持久。 之前看团购,只看到了它的销售意义,没想到它还包含了推广
阅读全文
摘要:Eclipse 【ADT】 源 https://dl-ssl.google.com/android/eclipse Notice that no matter what scenario causes the activity to stop, the system always calls onP
阅读全文
摘要:定义描述类名或者方法名的注解:ClassOrMethodFullName.java 【写一个js方法】 function + 方法名 + 括号 + 代码块 【调用这个js方法得加括号】 【带参数的函数,参数是不需要声明类型部分的】 【带返回值的函数,很好理解】 返回值是可选的,means,你想在哪个
阅读全文
摘要:单例模式的并发问题和延迟加载 非并发的单例模式: 多线程下,上面的instance == null 与 instance = new Singleton()的操作不是原子的,所以会导致instance == null的判断不正确,从而导致出现多个实例; synchronized能保证上述的原子性:
阅读全文
摘要:某个线程获得对象的锁之后,只能阻止其他线程获得同一个锁,并不能阻止其他线程通过另外的锁来访问对象的变量 每个可变或共享的变量都该由同一个锁来保护; 简单粗暴的全部synchronized会使得并发程序变成串行程序,影响性能,多核CPU会有空载运行,应该缩小同步块的大小,将不影响共享状态并且执行时间较
阅读全文
摘要:发送一个子类对象给声明了其父类类型的方法,是没问题的; 但是发送一个子类对象List给声明了其父类类型List的方法,是不行的; 这个时候,有限通配符就可以派上用场,在接受方法的声明中:List<? extends E> o;
阅读全文
摘要:类加载器阶段的“通过一个类的全限定名来获取描述此类的二进制字节流”这个动作被放到了Java虚拟机外部去实现,以便让应用程序自己定义如何获取所需要的类,即,可在自己的代码中实现一个java.lang.ClassLoader类作为自定义的类加载器; 不同的类加载器加载上来的类并不相等,即使是来源于同一个
阅读全文
摘要:【选择排序】 a[i++] —> a[n],从前往后看、选择最小值、一次交换到位 1,完整循环找到数组中最小的元素; 2,把这个最小的元素与a[0]交换; 3,在a[i]-an的子数组中重复1-2步骤; 简写: 特点: 选择排序的扫描路线:a[i++] —> a[n] 选择排序是在每个大循环下,通过
阅读全文
摘要:局部变量表(虚拟机栈中的一部分)在编译期完成分配,运行期不会再改变大小; 每个方法对应一个栈帧(存储局部变量表、操作数栈、动态链接、方法出口等),栈帧被存储到虚拟机栈中,每个线程对应一个虚拟机栈,方法结束,栈帧生命周期结束,线程结束,虚拟机栈生命周期结束; 如果线程请求的虚拟机栈深度大于虚拟机所允许
阅读全文
摘要:【String】就是对char[]数组进行封装的对象,由三部分组成: 1, char数组:它是String对象所表示的字符串的超集; 2, 3, offset和count,表示了String对象表示的字符串在char数组中的起始段; String是特定设计的,包含以下三个特点: 1, 不变性: 不变
阅读全文
摘要:【ArrayList LinkedList Vector】 Vector对于ArrayList,因为同步而引起的性能差别并不明显; LinkedList是循环双向链表,无论是否为空,总包含一个header表项: |——————————————————————> header ——> ele1 ——-
阅读全文
摘要:几个对数组的算法 1, 找出数组中的最大值: //把最大值马上设定为数组的第一个元素,然后遍历数组,如果有别当前这个最大值更大的元素,则把最大值更新,直到遍历结束; 2, 计算数组的平均值: //算出总值,然后除以数组的元素数; 3,复制数组: 4,颠倒数组元素的顺序: 偶数个元素的交换过程: <
阅读全文

浙公网安备 33010602011771号