【Android面试】Java & Kotlin语言

文章目录

  • [一. Kotlin](#一. Kotlin)
    • [1. 协程是什么](#1. 协程是什么)
    • [2. 泛型的Out和In关键字](#2. 泛型的Out和In关键字)
    • [3. UnsafeVariance](#3. UnsafeVariance)
  • [二. Java](#二. Java)

一. Kotlin

1. 协程是什么

官方回答:协程视为一种轻量级线程,可用于提高并发代码的性能
关键词:轻量级,并发
轻量级 :它不映射到本机线程,因此不需要在处理器上进行上下文切换,因此协程速度更快(线程由操作系统管理,协程由用户管理)
结构化并发 :Kotlin 协程支持结构化并发模型,通过 CoroutineScope 来管理协程的生命周期,确保所有协程在完成或取消时不会泄漏。

并发与并行的区别

一手画圆,一手画方,两只手同时操作,左右互搏,这个是并行;但是呢,我先左手画一笔,右手画一笔,同一时候只有一只手在操作,来回交替,直到完成图案,这个就是并发
支持以同步的方式编写异步代码
协程是更高效和更简单的方式管理并发的框架,其轻量级线程编写在实际线程框架之上,通过利用函数的协作性质来充分利用它

2. 泛型的Out和In关键字

添加链接描述

  • Out:协变------生产者
    协变:只能读取不能写入
    Out T等价于 ? extends T
    案例1:支持协变的List
  • In:逆变------消费者
    逆变:只能写入不能读取
    In T等价于 ? super T
    案例2:支持逆变的Comparator

3. UnsafeVariance

二. Java

相关推荐
青石路5 分钟前
记一次多JDK版本问题的排查,一坑套一坑,差点没爬上来
java
kyriewen33 分钟前
我手写了一个 EventEmitter,面试官追问了 6 个问题——第 4 个我没答上来
前端·javascript·面试
她的男孩2 小时前
后台接口加密别只会 HTTPS,ForgeAdmin 的 RSA + SM4/AES 源码拆解
后端·面试·开源
杉氧2 小时前
深入理解 Compose 重组机制:快照系统如何驱动 UI 精准刷新?
android·架构·android jetpack
召钱熏3 小时前
状态枚举正确≠渲染正确:一个语音按钮的状态机边界修复实录
android·前端
Randyliu3 小时前
20260508-Agent搭建记录以及对ReAct框架的理解
面试·agent
像我这样帅的人丶你还3 小时前
Java 后端详解(五):Redis 缓存
java·后端·全栈
杉氧3 小时前
深度解析:Jetpack Compose 核心架构与底层原理 —— 十年安卓老兵的“破茧重生”
android·架构·android jetpack
通玄4 小时前
Jetpack Compose 入门系列(七):ViewModel 与界面状态管理
android
ZzT4 小时前
公司用 AI 筛简历,他写了个 AI 帮你挑公司
面试·aigc·ai编程