
面试
安歌_claire
致虚极,守静笃
展开
-
Android View System
事件分发事件分发的对象是谁?点击事件(Touch事件)当用户触摸屏幕时(View 或 ViewGroup派生的控件),将产生点击事件(Touch事件)Touch事件的相关细节(发生触摸的位置、时间等)被封装成MotionEvent对象事件类型具体动作MotionEvent.ACTION_DOWN按下View(所有事件的开始)MotionEvent.ACTION_UP抬起View(与DOWN对应)MotionEvent.ACTION_MOVE滑动ViewM原创 2020-12-30 19:58:29 · 1205 阅读 · 0 评论 -
Android基础
Java基础String, StringBuffer and StringBuilder可变性String 不可变StringBuffer 和 StringBuilder 可变线程安全String 不可变,因此是线程安全的StringBuilder 不是线程安全的StringBuffer 是线程安全的,内部使用 synchronized 进行同步线程池实现 Runnable 接口和 Callable 接口的区别Runnable 接口或 Callable 接口实现类都可以原创 2020-12-04 17:22:13 · 1010 阅读 · 0 评论 -
Android-三方源码
Retrofit源码分析Builder模式创建实例retrofit = new Retrofit.Builder() .baseUrl(GankConfig.HOST) .addConverterFactory(GsonConverterFactory.create(date_gson))//添加一个转换器,将 gson 数据转换为 bean 类 .addCallAdapterFactory(RxJava2CallAdapterFactory.create())//添加一个适配器原创 2020-12-23 20:43:08 · 243 阅读 · 0 评论 -
算法
目录两个子线程交替打印递增整数未排序的整数中找最大值和最小值?单次遍历计数排序快速排序LRU两个子线程交替打印递增整数public static void main(String[] args) { Task task=new Task(); Thread t1=new Thread(task,"thread_1"); Thread t2=new Thread(task,"thread_2"); t1.start(); t2原创 2020-12-23 20:40:38 · 121 阅读 · 0 评论 -
网络基础
输入一个URL到浏览器发生了什么浏览器查找域名的ip地址浏览器缓存 —— 浏览器会缓存DNS记录一段时间。 有趣的是,操作系统没有告诉浏览器储存DNS记录的时间,这样不同浏览器会储存个自固定的一个时间(2分钟到30分钟不等)。系统缓存 —— 如果在浏览器缓存里没有找到需要的记录,浏览器会做一个系统调用(windows里是gethostbyname)。这样便可获得系统缓存中的记录。路由器缓存 —— 接着,前面的查询请求发向路由器,它一般会有自己的DNS缓存。ISP DNS 缓存 – 接下来要che原创 2020-12-23 20:39:44 · 280 阅读 · 0 评论 -
Java基础
ArrayList主要底层实现是数组Object[] elementData,查询效率高,增删效率低,线程不安全。构造法无参构造法:通过无参构造方法的方式ArrayList()初始化,则赋值底层数Object[] elementData为一个默认空数组Object[] DEFAULTCAPACITY_EMPTY_ELEMENTDATA = {}所以数组容量为0;有参构造法:只有真正对数据进行添加add时,才分配默认DEFAULT_CAPACITY = 10的初始容量。扩容通过数组扩容的方式去实原创 2020-12-23 20:37:51 · 560 阅读 · 0 评论