【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 小时前
【若依项目-产品经理视角】深度拆解 RuoYi-Vue-Pro 商城模块:从商品管理到交易引擎,50 张表撑起一整套电商系统
java·大数据·vue.js·产品经理·ai编程
码智社6 小时前
AES加密原理详解及Java实现加解密实战
java·开发语言
触底反弹7 小时前
🔥 2026 大模型选择指南:别再只看 Benchmark 了,这些维度才是关键!
人工智能·面试
萧瑟余晖7 小时前
JDK 26 新特性详解
java·开发语言
马优晨8 小时前
Freemarker 完整讲解(后端 Java 模板引擎)
java·开发语言·freemarker·freemarker 完整讲解·freemarker模板引擎
醇氧8 小时前
CountDownLatch / CyclicBarrier / Semaphore 面试高频问答清单
前端·面试·职场和发展
维天说11 小时前
CLI-Switch 2026年3月版历史设计:Hook、TTY 隔离与 JSON 状态
java·服务器·json
执明wa11 小时前
LayoutInflater详解: XML是如何变成View的?
android·xml·开发语言·android studio
404_coder11 小时前
源码视角下的 Android 开机流程:从 Zygote、SystemServer 到 Launcher
android
Zane199411 小时前
并发 vs 并行:别再傻傻分不清了,一文讲透 Java 并发编程的第一课
java·后端