flutter的issue搜索问题: Could not resolve the package ‘characters’ in ‘package:characters/characters.dart’. 解决方法:使用命令: flutter pub cache repair flutter clean
使用 直接引入即可,会自动进行初始化 初始化原理: AppWatcherInstaller < provider android:name="leakcanary.internal.AppWatcherInstaller$MainProcess"/> 利用 ContentProvider#onCreate() 方法会先于 Application#onCreate() 方...
网络模块 后端 API 接口请求 HttpClient 和 AndroidHttpClient 实现 其本质为添加请求头 文件上传与下载 HttpUrlConnection 和 AndroidHttpClient 实现 图片加载中的网络请求 HttpURLConnection 实现 Web 中的网络请求 1、 WebView 拦截部分网络请求 HttpURLConnect...
四种引用类型 强引用 new object/array GC 不回收、内存不足时会 OOM 软引用 SoftReference 被软引用引用的对象,只有当内存不足时 GC 才会回收 内存敏感的高速缓存 弱引用 WeakReference 被弱引用引用的对象,只要 GC 就会被回收 虚引用 PhantomReference 虚引...
Android 类加载 protected Class<?> loadClass(String name, boolean resolve) throws ClassNotFoundException { // 1、如果类已被加载,则直接返回 // First, check if the class has already been loaded Cla...
数据结构 数组 ArrayList 单链表 双链表 LinkedList 栈 先进后出 队列 算法 数组排序相关 1、冒泡 2、快排 3、二分查找 public static int binarySearch(int[] args, int target) { if (args == null || args.length == 0) return -1; ...
HTTP 是什么 超文本传输协议 三次握手 建立一个 TCP 连接时,客户端和服务端一共需要发送 3 个包。三次握手的主要作用是确认双方 的发送能力和接收能力是否正常、指定自己的初始化序列号为后面的可靠性传输做准备。实质上 就是连接服务器指定的端口号,建立 TCP 连接,并同步连接双方的序列号和确认号,交换 TCP 窗口大小信息。 1、三次握手过程 一开始的时候,client ...
核心参数解析 核心线程 非核心线程及存活时间 任务队列 线程工厂 拒绝策略 默认实现有四种: CallerRunsPolicy AbortPolicy DiscardPolicy DiscardOldestPolicy 任务提交 @Override public void execute(R...
面向对象三大特征 封装 属性、方法、安全、简化编程 继承 子类继承父类/实现接口、父类的属性 多态 多实现、方法重载/重写、强转 面向对象五大原则 职责单一原则 一个类应该仅有一个引起它变化的原因 开闭原则 对扩展是开放的,对修改是关闭的 里氏替换原则 基类出现的地方,子类一定可以出现 子类可以替换父类并且出现在父类能够出现的任何地方 面向接口编程 依赖倒置原则 ...
#put() 方法 public V put(K key, V value) { // 插入数据 return putVal(key, value, false); } final V putVal(K key, V value, boolean onlyIfAbsent) { // key 和 value 均不能为 null,HashMap key 和 valu...