最近学习Compose,一开始学习的Compose版本是1.1.1,学习的过程中发现,LazyHorizontalGrid这个方法只有在1.2.0以后版本才支持。想着既然要升级,直接用最新的好了。后面按照官网建议,下载了最新的AndroidStudio,我目前下载的最新的是giraffe版本。然后直接新建了一个Compose项目这样会自动导入Compose相关依赖,在配置的过程遇到一系列的问题,这里记录下:1、版本配置官方推荐我们使用BOM(物料清单)来管理所有的compose依赖版本,以便于我们使用,它为我们整理了一个版本中一些相互关联的依赖,使我们在开发过程中不用担心依赖迭代和一些新特性。
并发编程Java并发在近几年的面试里面可以说是面试热点,每个面试官面试的时候都会跟你扯一下并发,甚至是高并发。面试前你不仅得需要弄清楚的是什么是并发,还得搞清什么是高并发!在这里很多小白朋友就会很疑惑:我工作又不用,为啥面试总是问?真就内卷卷我呗!(手动狗头)互联网内卷已经是现在的行业趋势,而且是不可逆的,这个大家也知道;但LZ要说的是,虽然简单地CRUD并不需要并发的知识,但是业务稍微复杂一点,你的技术水平稍微提升一点的话你就会知道,并发是我们Java程序员绕不开的一道坎。如何打开并发世界的大门?想也不用想,最简单最快捷的方法当然是一头扎进源码!但是只适用于并发理论已经储备足够的小伙伴。对于
什么是kotlin?kotlin是静态类型的编程语言,运行于jvm之上。如果在编译时知道变量的类型,则语言是静态类型的,在运行时知道变量类型,则语言是动态类型。什么是extension(扩展)函数Kotlin可以对一个类的属性和方法进行扩展,对被扩展的类代码本身不会造成任何影响。扩展函数可以为已经存在的类添加新的方法,并且不会修改原来的类。classMainActivity:AppCompatActivity(){overridefunonCreate(savedInstanceState:Bundle?){super.onCreate(savedInstanceState)setConten
查询mac已有版本 1、打开终端,输入:/usr/libexec/java_home-V注意:输入命令参数区分大小写(必须是-V)2.目前本地装有两个版本的jdkxxxx@edydeMacBook-Pro-9~%/usr/libexec/java_home-VMatchingJavaVirtualMachines(2):20.0.1(x86_64)"OracleCorporation"-"OpenJDK20.0.1"/Users/xxxx/Library/Java/JavaVirtualMachines/openjdk-20.0.1/Contents/Home11.0.18(x86_64)"O
欢迎访问我的GitHub这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos关于虚拟线程随着JDK19GA版本的发布,虚拟线程(来自ProjectLoom)这一特性也闪亮登场,虚拟线程是JDK而并非OS实现的轻量级线程(LightweightProcess,LWP),许多虚拟线程共享同一操作系统线程,虚拟线程的数量可以远大于操作系统线程的数量(可以参考golang的协程)虚拟线程方面的文章,如今已经有很多优秀博主写得非常详细深入,欣宸就不在这方面献丑了,而是将重点放在虚拟线程的实用性方面,用实战与大家一同学习:如何让虚拟线程在w
前言协程系列文章:一个小故事讲明白进程、线程、Kotlin协程到底啥关系?少年,你可知Kotlin协程最初的样子?讲真,Kotlin协程的挂起/恢复没那么神秘(故事篇)讲真,Kotlin协程的挂起/恢复没那么神秘(原理篇)Kotlin协程调度切换线程是时候解开真相了Kotlin协程之线程池探索之旅(与Java线程池PK)Kotlin协程之取消与异常处理探索之旅(上)Kotlin协程之取消与异常处理探索之旅(下)来,跟我一起撸KotlinrunBlocking/launch/join/async/delay原理&使用我们知道线程可以被终止,线程里可以抛出异常,类似的协程也会遇到此种情况。本篇将从
Kotlin是什么Kotlin是一门运行在JVM之上的语言。它由Jetbrains创建,而Jetbrains则是诸多强大的工具(如知名的JavaIDEIntelliJIDEA)背后的公司。Kotlin是一门非常简单的语言,其主要目标之一就是提供强大语言的同时又保持简单且精简的语法。kotlin特性其主要特性如下所示:轻量级:这一点对于Android来说非常重要。项目所需要的库应该尽可能的小。Android对于方法数量有严格的限制,Kotlin只额外增加了大约6000个方法。互操作:Kotlin可与Java语言无缝通信。这意味着我们可以在Kotlin代码中使用任何已有的Java库;因此,即便这门
Kotlin.Java的单例在Kotlin的5种实现1.饿汉式2.懒汉式3.线程安全的懒汉式4.双重校验锁式静态内部类式1.饿汉式JavapublicclassSingleton{privatestaticSingletoninstance=newSingleton();privateSingleton(){}publicstaticSingletongetInstance(){returninstance;}}KotlinobjectSingleton{}2.懒汉式JavapublicclassSingleton{privatestaticSingletoninstance;privateS
目录一、jdk11下载1.1、官网下载网址1.2、官网下载步骤二、jdk11安装(win10环境)三、jdk11环境变量配置(win10环境)3.1、jdk11环境变量配置步骤3.2、jdk11环境变量验证步骤一、jdk11下载1.1、官网下载网址https://www.oracle.com/java/technologies/downloads/#java11-windows1.2、官网下载步骤点击官网下载地址后,选择对应的系统环境,下载即可,如下图:二、jdk11安装(win10环境)下载好安装包后,双击.exe程序,弹出如下窗口,点击【下一步】更改安装目录,点击【下一步】,如下图:等待安
前言协程系列文章:一个小故事讲明白进程、线程、Kotlin协程到底啥关系?少年,你可知Kotlin协程最初的样子?讲真,Kotlin协程的挂起/恢复没那么神秘(故事篇)讲真,Kotlin协程的挂起/恢复没那么神秘(原理篇)Kotlin协程调度切换线程是时候解开真相了Kotlin协程之线程池探索之旅(与Java线程池PK)Kotlin协程之取消与异常处理探索之旅(上)Kotlin协程之取消与异常处理探索之旅(下)来,跟我一起撸KotlinrunBlocking/launch/join/async/delay原理&使用上篇文章分析了协程切换到主线程执行的详细流程,本篇将分析如何切换到子线程执行。通