自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

转载 Android Jetpack 架构组件之 Lifecycle (二) 使用

Lifecycle 使用在 上篇文章 Lifecycle(一) 起源中已经通过一个例子让大家简单的认识到:将依赖于生命周期的代码直接写在Activity 或 Fragment 会导致代码条理性很差并且会扩散错误。通过Lifecycle可以将依赖组件的代码从生命周期方法移入组件本身中。也就是说,组件内部可以感知到Activity 或者Fragment的生命周期这篇文章具体展开说一下Lifecycle 的用法预备知识Lifecycle 中的事件和状态Lifecycle 通过两个枚举类型:Ev

2020-08-11 09:29:46 153

转载 Android Jetpack 架构组件之 Lifecycle (一)起源

Lifecycle的存在意义文章开头先来引入一个 业务案例这是一个学习英语的App,部分页面支持 划词播放如何可以优雅得实现这个真实的业务场景呢?首先需要定义一个全局单例的播放器,播放器有一个方法play(val content: String)object ContentPlayer { fun play(content: String) { //调用系统播放器播放 } fun prepare(context: Context)

2020-08-11 09:28:32 163

原创 吐血总结 2020 Android 实习面经

文章目录知识点总结:1. 主线程里的looper的无限循环为什么不会堵塞主线程,是不是非常会消耗系统资源?2. 系统为什么不允许子线程中访问UI?3. Handler是如何能够线程切换的4.说一下你对Android的事件分发机制的理解5. 说一下关于屏幕适配的理解5. Java 中new一个对象经历哪些过程6. JVM根节点枚举7. 触发类初始化的场景有哪些8. ThreadLocal 实现原理9. Java 的线程的实现10.悲观锁与乐观锁?11. 锁优化机制12. 说一下线程池的运作过程,有哪几种种类

2020-05-13 17:24:26 755

原创 字节一面 凉凉 分享面经

2020/5/11 飞书 一面整个过程还挺流程,有一些比较深的问题不会,结果最后两道算法开始自闭。。第二道算法题开始慌了,哎,写一半和面试官说不学了,当时也知道机会不大,以后我要好好学算法,立个flag,一天两道力扣。说一下项目(网络层的封装)对MVP、MVVM的理解线程安全的集合有哪些HashTable和CurrentHashMap的线程安全实现的区别(这个没答出来)线程池有哪几种,他们的区别是什么SP的commit和apply的区别synchronized 关键字实现原理线程池的种

2020-05-12 10:16:03 202

原创 关于Java的四大引用你了解多少?

Java四大引用强引用强引用是JVM的默认支持模式,即在引用期间内,一块堆内存空间只要被栈内存中的一个引用引用就无法被GC回收。这种引用除非显示的指定为null,否则即使出现了OurofMemeryError,也不会回收这种引用。public class test { public static void main(String[] args) { Object o = new Object(); Object ref = o; o = null

2020-05-09 12:57:57 156

原创 Java SE8 流 最全总结

文章目录Java SE8 流综述第一步 转换流的常用方法中间的转换流操作filter(筛选)map(转变)flatMap(平摊)截取流limit(),截取前n个数据skip(),跳过前n个数据concat(),拼接两个流其他转化流distinct(),查重sorted(),排序peek(),遍历终结操作约简Optional使用Optional创建Optional收集foreachtoArray,转成数组collect将流收集到列表中将流收集到集中收集到特定种类的集合中收集到map中joining(),将所有

2020-05-09 11:24:05 839

原创 OkHttp 源码概述

OkHttp 源码概述概览OkHttp是Android开发中一个支持Http协议的高效网络请求框架,支持同步请求和异步请求。。我们通过配置Request的url,okhttp就可以帮我们配置好其它所有关于http协议通讯的所有事情,包括缓存(需要手动开启)、添加请求头、压缩文件(GZIP)、自动重连、重定向、cookie、连接共享等等。源码OkHttp的源码主要分为两部分:走拦截器之前的部分,拦截器是OkHttp最精髓的地方,同时支持扩展,自定义拦截器。Okio首先看一下Okio,OkHttp

2020-05-09 00:30:01 321

原创 在?进来复习一下ArrayList

Java ArrayList 源码解析ps:这篇文章是Java 集合框架源码分析系列的第一篇文章,从Java中最常用的集合类ArrayList开始。ArrayList简介以下源码来自jdk1.8这是一个实现了List接口的 底层通过数组实现的容量可变的集合类中add方法的时间复杂度为O(n),其他操作的时间复杂度大致与add方法的时间复杂度持平创建ArrayList时,可以指定...

2020-05-06 13:51:29 147

原创 简单看一下Java中的集合框架的设计

Java集合框架ps:写这篇文章主要为了整理一下Java 的类集合框架,如有错误或不全,欢迎纠正Java集合框架图图片摘自网络补充一下上图:继承自Iterator的是ListIterator而不是LinkIterator加一个Dueue接口继承自Queue集合框架分析整个Java集合框架其实被分为两部分,Collection和Map,但我们一般也称Map是Collec...

2020-05-05 16:42:38 265

原创 Android Handler 机制详解 (三)内存泄漏

ps:看本文之前最好先了解一下Handler源码常用写法我们一般使用Handler使用匿名内部类的写法,也就是:private Handler mHandler = new Handler() { @Override public void handleMessage(@NonNull Message msg) { super.han...

2020-05-02 02:49:05 1041

原创 Android Handler 机制详解 (一)用法全解

ps:这是关于Android Handler 机制的第一篇文章,主要来说一下Handler的用法,本文尽量归纳完全,如有缺漏,欢迎补充。Handler的主要作用是切换线程,以及隐式的充当接口回调的作用,当子线程网络请求结束后,通过handler发送消息给主线程,这一点都不多说了。常用用法先来贴一种最常用的用法: private Handler mHandler = new Handler...

2020-05-02 02:47:44 558

原创 Android Handler 机制详解(二)源码解析

文章目录Android Handler 机制详解(一)源码解析Handler简介基本用法源码分析消息入队机制分析循环机制四个类的关系消息处理机制收尾Android Handler 机制详解(一)源码解析Handler简介初学者对于handler的认识就是切换线程更新UI,但如果你分析过Handler的源码之后,你会发现Handler机制对于整个APP的运行起到了至关重要的作用,而不只是简简单...

2020-01-29 04:05:00 436

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除