首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
斯德哥尔摩
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
0
文章 0
沸点 0
赞
0
返回
|
搜索文章
最新
热门
Okhttp
若获取不到,才会调用createNextConnection()新建一个Connection。 在调用getResponse()后若获取到Response则break,否则在死循环(while(true))中不断重连(retry),重连前会通过recover()重置参数。 --…
反射
-- 类是对象,类是java.lang.Class类的实例对象。 com.imooc.reflect.Foo是类的全称。 c1 == c2 == c3,因为一个类的类类型只有一个。并且需要获取类的信息(类成员变量/方法/构造方法/包名/注解等),必须先获取类的类类型(Class…
代理模式
子类通过继承父类,在子类重写父类方法时,手动调用父类的方法,并在子类中对其增强。 实现同一个接口,并持有被代理的对象。 聚合代理优于继承代理。因为实现功能叠加的情况下,聚合代理通过相互代理可以实现功能重用,而继承代理必须写多个类来实现多功能叠加。 动态产生代理,实现对不同类,不…
Android图片优化OOM
BitmapFactory.Options的属性inJustDecodeBounds = true,即在不加载图片进内存的情况下获取图片的宽高。 计算合适的压缩比inSampleSize,设置inSamleSize >= 2 即可降低图片的采样率,减小图片的内存占用。 单纯改变…
Java基础(一)
注: next()既会取出元素,也会把指针向后移一位。 底层数据集结构是可变长度的数组。 不是线程同步的,多线程并发,效率高速度快。 查询快(数组地址连续),增删慢(每增加一个元素,底层就要调用数组复制方法(arraycopy))。 底层数据集结构是链表。 不是线程同步的,多线…
MVC MVP MVVM框架
IView是一个interface,接口中定义操作View的方法,由Activity实现,Presenter调用。用于规定Presenter可以操作View(包括了Activity)的哪些功能(不能操作Activity的全部)。 View不持有Model的实例,Presente…
Rxjava异步框架源码解析
多对一,多个观察者,一个被观察者,观察者对于被观察者有高度的数据敏感性,可以做出相应变化。 被观察者Observerable的notifyObservers()中会依次遍历每个观察者,并调用其update()。 用create方法。注意Subscriber就是观察者Observ…
Dagger2依赖注入框架源码解析
1. 通过接口注入 2. 通过set方法注入 注解注入的好处: 将需要依赖的类和提供依赖的类分割开来,降低代码的耦合性。 @Inject标注的成员变量不能声明为private(内部用public get()方法获得变量)。 标记在构造函数上,Dagger2会自动生成实例(内部生…
EventBus
EventBus是Android事件发布/订阅框架。 主线程发送消息sendMessage(msg),子线程处理消息handleMessage(msg)。 子线程发送消息sendMessage(msg),主线程处理消息handleMessage(msg)。 在onStart和o…
BlockCanary UI卡顿优化框架源码解析
provideBlockThreshold()返回的是事件处理的超时阈值,单位ms。 BlockCanary在dispatchMessage(msg)方法(在主线程中运行)前后打印log信息,根据上下两个log的时间差来判定dispatchMessage是否产生了耗时操作(UI…
下一页
个人成就
文章被点赞
1
文章被阅读
4,268
掘力值
212
关注了
0
关注者
0
收藏集
0
关注标签
7
加入于
2020-06-24