上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 18 下一页
摘要: 0. Java 容器 1. HashTable、HashMap、ConcurrentHashMap 线程安全对比 HashMap:异步的,线程不安全; HashTable:同步的,synchronized针对的是整个hash表,是独占锁,同一时刻只能有一个线程访问操作,线程安全; Concurren 阅读全文
posted @ 2021-08-21 19:26 naray 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 一、Java程序运行时内存分配策略 静态存储区(方法区):主要用于存放静态数据、全局Static数据和常量的存储区。此存储区在程序编译时就已经分配好了,并且在程序整个运行期间都存在。 栈区:方法体内的局部变量都在栈上创建。 堆区:又称动态内存分配区,在程序运行中通过new关键字申请的内存。 二、栈内 阅读全文
posted @ 2021-08-21 19:26 naray 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 1. 什么是方法分派? 就是确定调用谁的,哪个方法。 在Java中子类覆写父类方法的方法都是虚方法,使用final、private修饰的方法不是虚方法。 2. 方法分派情况分析 在Java中子类继承父类并覆写父类方法,在调用时取决于运行时的实际类型。 // 父类 public class Super 阅读全文
posted @ 2021-08-20 16:34 naray 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 1. 什么是异步? 先说说什么是同步,与同步对应的就是异步了。 同步:整个事件过程按顺序执行,等待各个事件过程都执行完成。整个事件线性执行,只有完成一个事件,才能继续执行下一个。 异步:调用者只是发送一个指令,无需等待事件执行完成,继续执行下一个事件。异步并不一定就是多线程操作,同一线程也可以完成异 阅读全文
posted @ 2021-07-22 18:29 naray 阅读(527) 评论(0) 推荐(0) 编辑
摘要: 一、操作符 1. Filter 2. Map 3. FlatMap 二. 原理 1. 懒汉式: list.asSequence().filter { }.map { }.forEach { } 逐一遍历列表,将符合filter条件数据,传递到map中,再传递给forEach。再继续遍历,找到符合条件 阅读全文
posted @ 2021-07-06 19:32 naray 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 一、by Lazy 延迟初始化是线程安全吗? Lazy是线程安全的,系统默认给Lazy属性添加了同步锁。也就是LazyThreadSafetyMode.SYNCHRONIZED,使之在同一时刻只能有一个线程对Lazy属性初始化操作。 /** * Specifies how a [Lazy] inst 阅读全文
posted @ 2021-07-06 19:30 naray 阅读(656) 评论(0) 推荐(0) 编辑
摘要: 一、协程是什么? 协程是程序自己控制挂起和恢复的程序。 协程可以实现多任务协作执行。 二、协程作用? 协程可以让异步代码同步化。 协程可以降低异步程序的设计复杂度。 三、协程分类 按调用栈分类: 有栈协程:每个协程都会分配一个单独调用栈,类似于线程的调用栈。 无栈协程:协程不会分配一个单独调用栈,挂 阅读全文
posted @ 2020-06-23 18:14 naray 阅读(3429) 评论(0) 推荐(0) 编辑
摘要: 1. 什么是注解? Java注解又被称为标注,是JDK 1.5 引入的一种注释机制。 Java源码的类、方法、参数、变量等前的一种特殊“注释”。 Java语言中类、方法、变量、参数和包等可以被标注。 注解就是用作标注的“元数据”。 和Javadoc不同,Java标注分为运行时和编译时两个实现。 运行 阅读全文
posted @ 2020-06-19 19:28 naray 阅读(228) 评论(0) 推荐(0) 编辑
摘要: Android 事件分发原理 1. 事件传递机制 1. 在Android中事件一次完整的事件传递分为三个阶段: 事件分发; 事件拦截; 事件消费; 2. Android中触摸事件类型: Android中触摸事件类对应MotionEvent类,主要事件有三种:ACTION_DOWN、ACTION_MO 阅读全文
posted @ 2020-06-19 19:22 naray 阅读(426) 评论(0) 推荐(0) 编辑
摘要: 1. Zygote进程作用是什么? 2. Zygote进程什么时候被启动? Android系统启动后第一个启动的进程就是Zygote进程。 2. Zygote进程如何fork启动一个新应用进程 Zygote进程通过复制自身方式创建一个新应用进程,由于Zygote进程启动时内部会创建一个虚拟机实例,因 阅读全文
posted @ 2020-06-18 09:52 naray 阅读(185) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 18 下一页