![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android源码
文章平均质量分 71
狐彻狐
狐族万岁
落魄的安卓开发程序员
展开
-
SharedPreferences 源码及原理
SharedPreferences 源码及原理 SharedPreferences 是Android中提供的一种轻量级数据存储方式,用来以键值对方式保存简单的数据类型。 创建流程 Android开发者通过Context的方法context.getSharedPreferences(String, Int)来获取SharedPreferences实例。Context中的具体实现如下 @Override public SharedPreferences getSharedPreferences(原创 2022-04-20 10:52:20 · 567 阅读 · 0 评论 -
LruCache源码及常用方法原理
LruCache源码及常用方法原理 特点 基于LinkedHashMap保存内容和实现排序 当缓存无空间,会将最少使用的元素移除 线程安全 常用方法原理 LruCache维护了一个LinkedHashMap用来保存元素,除此之外还有一些用来记录状态、长度等的成员变量 @UnsupportedAppUsage private final LinkedHashMap<K, V> map; /** Size of this cache in units. Not nece原创 2022-04-19 10:39:41 · 127 阅读 · 0 评论 -
LinkedList源码及常用方法原理
LinkedList源码及常用方法原理 特点 双链表结构 适合用来在频繁添加和删除元素的操作 查找和修改的效率较低 常用方法原理 源码中维护了size、first、last三个参数,分别用来保存当前数组长度、数组第一项和数组最后一项。其中后两者是Node<E>类的实例 private static class Node<E> { E item; Node<E> next; Node<E> prev;原创 2022-04-18 12:35:01 · 77 阅读 · 0 评论 -
ArrayList源码及常用方法原理
ArrayList源码及常用方法原理 特点 数组长度动态增长 非线程安全 实现了Serializable接口 实现了RandomAccess,支持快速随机方问 实现了Cloneable接口 常用方法原理 根据源码中定义的两个私有属性可知,ArrayList使用elementData来保存数组内容,用一个int类型的变量size保存当前数组长度。 构造器 /** * Constructs an empty list with the specified initial capacity.原创 2022-04-16 12:31:55 · 2491 阅读 · 0 评论 -
【Android源码】ApplicationContext 创建流程
ApplicationContext 创建流程 当用用程序启动后,应用程序内就有一个ApplicationContext对象。其通过LoadedApk.java的makeApplication()创建。根据启动app的是Service或Activity两种情况,进入makeApplication()的入口有所不同 如,通过启动Activity触发Application创建,AMS服务调用方法scheduleLaunchActivity(),代码如下 // we use token to id原创 2022-04-06 10:29:44 · 635 阅读 · 0 评论