叫我小泡泡_

Results 26 comments of 叫我小泡泡_

的确是,然而时间也是能挤出来的,关键在于毅力吧。

图片压缩: 1. 对于 minAPI>19,可以将资源文件下的 png 转化为 webp(有些 png 转化为 webp 体积会变大) 2. 利用 TinyPng 插件批量压缩资源文件下的 png 图片 图片去重: 利用 HAHA 库分析内存中的 Bitmap,找到不同模块中引入的相同的图片,这个还待实践。

SP 是线程安全,非进程安全。commit 和 apply 的方法里面都一个 commitToMemory 方法,即把更新同步到内容。至于落地磁盘,commit 也并非完全同步,如果 commit 前有 apply 还未落盘,commit 会异步等待 apply 落盘之后在执行,内部通过一个计数器来判断。 详细见:https://github.com/Omooo/Android-Notes/blob/master/blogs/Android/SharedPreferences.md

> Error 是系统中的错误,不可预料的,这种异常发生后,会导致程序立即崩溃。只能通过修改代码,使错误不在出现,这种错误 无法被捕获。 > > Exception 则是可以预料的。在程序中如果过感觉某段代码会出现 异常,则可以使用 try catch 进行捕获 ,或者直接抛出异常。Exception 可分为 编译时异常(CheckedException) 和 运行时异常(RuntimeException)。运行时异常可以 忽略捕获操作(RuntimeException),编译时异常必须使用 try catch 进行捕获。 > > 常见的几种RuntimeException如下: > > NullPointerException - 空指针引用异常 >...

> > 切记,Error是Throw不是Exception 。 > > “切记,Error是Throw不是Exception ” 这句话是啥意思? 就是异常的实例都是 Throwable 及其子类,分为两种,一种是 Error,一个是 Exception。可以看看我的主页的项目撒。

https://github.com/Omooo/Android-Notes

首先要先明白为什么需要使用克隆呢? 克隆的对象可能包含一些已经修改过的属性,而 new 出来的对象的属性都还是初始化时候的值,所以当需要一个新的对象来保存当前对象的 "状态" 就需要克隆了。 那如何实现对象克隆呢?有两种办法: 实现 Cloneable 接口并重写 Object 类中的 clone() 方法 实现 Serialiable 接口,通过对象的序列化和反序列化实现克隆,可以实现真正的深度克隆 深拷贝和浅拷贝的区别是什么? 浅拷贝 当对象被复制的时候只复制它本身和其中包含的值类型的成员变量,而引用类型的成员变量并没有复制。 深拷贝 除了对象本身被复制外,对象所包含的所有成员变量也将被复制。 Java 默认的是浅拷贝,如果想实现深拷贝,就需要对象所包含的引用类型的成员变量也需要实现 Cloneable 接口,或者实现 Serialiable 接口。

第二种没问题,应该是 resources 是你构造插件的 DexClassLoader 然后创建的 Resources 吧,所以就没问题的。