【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

相关推荐
大傻^11 分钟前
Spring AI Alibaba ChatClient实战:流式输出与多轮对话管理
java·人工智能·后端·spring·springai·springaialibaba
小帅学编程14 分钟前
英语学习笔记
java·笔记·学习
学编程就要猛23 分钟前
JavaEE初阶:文件操作和IO
java·java-ee
ba_pi23 分钟前
每天写点什么2026-03-19-Doris三种存储模型
java·数据库·mysql
程序员老乔26 分钟前
Java 新纪元 — JDK 25 + Spring Boot 4 全栈实战(二):Valhalla落地,值类型如何让电商DTO内存占用暴跌
java·spring boot·c#
SuniaWang32 分钟前
《Spring AI + 大模型全栈实战》学习手册系列· 专题二:《Milvus 向量数据库:从零开始搭建 RAG 系统的核心组件》
java·人工智能·分布式·后端·spring·架构·typescript
张小洛35 分钟前
Spring 常用类深度剖析(工具篇 02):ReflectionUtils——优雅操作反射的利器
java·后端·spring·工具类·spring常用类
耶叶1 小时前
Android 新权限申请模型(Activity Result API)
android
阿拉斯攀登1 小时前
【RK3576 安卓 JNI/NDK 系列 04】JNI 核心语法(下):字符串、数组与对象操作
android·驱动开发·rk3568·瑞芯微·rk安卓驱动·jni字符串操作
GoodStudyAndDayDayUp1 小时前
RUO-VUE-PRO权限关联sql
java·数据库·sql