- 博客(14)
- 收藏
- 关注
原创 Android 事件分发机制详解:从原理到实战,解决 90% 的交互问题
Android事件分发机制是用户交互的核心基础,涉及Button点击、滑动等场景。本文从核心概念、源码分析、实战案例和避坑指南四方面深入解析。关键点包括:1) 事件本质是MotionEvent对象;2) 三大核心方法dispatchTouchEvent、onInterceptTouchEvent和onTouchEvent的分工;3) "自上而下分发,自下而上回传"的流程规则。通过自定义可拖动View、解决滑动冲突等实战案例,结合源码分析,帮助开发者掌握事件拦截、消费等核心逻辑。最后提供点
2026-02-12 15:32:46
673
原创 Kotlin StateFlow 一种可与LiveData互补的观察者
摘要:StateFlow作为Kotlin Flow体系中的"有状态响应式流",已成为Android状态管理的新选择。它结合了LiveData的状态存储特性和Flow的响应式编程能力,支持自动去重、背压处理等特性。本文系统介绍了StateFlow的核心使用:1)基础用法包括定义可变流、生命周期绑定订阅;2)进阶技巧涵盖Flow操作符、多流合并、密封类封装状态;3)实战演示全局登录状态管理案例;4)重点分析了内存泄漏等常见问题及解决方案。相比LiveData,StateFlow更适合复杂状态
2026-02-11 15:59:24
654
原创 Java 内存模型(Java Memory Model, JMM)详解
Java 内存模型(Java Memory Model,简称 JMM)描述了的规则和规范。JMM 确定了 Java 虚拟机(JVM)如何在不同的硬件平台和操作系统上管理内存的一致性问题,从而保证 Java 的并发程序能够正确执行。JMM 规定了,并解决了和的问题。
2024-10-14 21:42:48
1864
原创 Java之 throw 和 throws 相关知识点
在 Java 中,异常是程序执行中出现的意外事件。这些事件会导致正常的程序流程被中断。Java 提供了异常处理机制,使得程序在面对问题时不至于直接崩溃,而是能够优雅地处理错误。异常的分类:(已检查异常):编译时检查的异常,必须显式地捕获或通过方法声明抛出。。(未检查异常):运行时异常,是的子类,编译时不会强制要求处理。。Error:Java 中Error是系统级的严重错误,比如内存不足,这类错误通常不需要处理,系统会自动处理。
2024-10-14 11:10:33
446
原创 乐观锁和悲观锁
悲观锁更适合写操作密集、数据一致性要求高的场景,常用于传统的事务型系统,例如库存系统、订单系统等。乐观锁更适合读操作密集、冲突较少的场景,尤其是在微服务、分布式系统中能发挥较大的性能优势,常用于用户信息更新、博客系统等。
2024-09-29 15:00:01
443
1
原创 LarkMidTable Ubuntu 部署日常
终端执行命令: mysql -u root -p 数据库source 导入的文件名;进入MySQL:mysql -u 用户名 -p。3. gitee下载LarkMidTable 压缩包并解压。1. 安装 mysql,做好mysql 的远程连接;Ubuntu下执行mysql的.sql文件。2. 安装 maven,安装包官网下载。以下步骤按照gitee教程来。ii. 配置环境变量。
2023-05-10 11:05:47
595
原创 MySQL学习笔记
自增的(下一行默认+1,可设定起始,步长)注:通常用来设计唯一的主键,必须是整数类型。时间戳,1970.1.1到现在的毫秒数。字符串形式的浮点数,一般用于金融计算。
2023-05-06 16:34:17
192
原创 BIOS启动的时候选择启动的两种方式的区别
uefi是新式的BIOS,功能更加强大,而且它是以图形图像模式显示,让用户更便捷的直观操作;legacy是传统BIOS。新的uefi模式是为了取代旧的legacy模式而存在的。很多电脑已经抛弃旧支持了,而选择uefi模式,已经逐步代替传统主板BIOS模式了。
2023-04-22 18:08:38
1620
原创 MySQL数据库完全卸载然后重装
再次查看依赖,如果输出为空,那么表示mysql已经彻底卸载干净了,如果不为空那么我们还要继续进行删除卸载。注意下面两个:这个rc 表示没删除掉的配置文件。1. 删除mysql的数据文件。2. 删除mysql的配置文件。3. 查看mysql依赖项。:删除包的同时清理配置文件。4. 自动卸载mysql。6. 手动卸载剩下的。5. 再次查看依赖项。
2023-04-21 17:17:24
505
原创 Ubuntu环境下的Tomcat服务器安装及其自启动配置
接下来就是给Tomcat文件添加使用权限:sudo chmod 755 -R apache-tomcat-8.5.87,回车后,接下来使用cd命令进入到Tomcat下的bin目录下:cd apache-tomcat-8.5.87/bin。下载到/usr/local/tomcat/下面并解压:tar -zxvf apache-tomcat-8.5.87.tar.gz。注意:在安装tomcat之前需要安装Java,JDK。复制bin 目录下面的 catalina.sh 文件到 /etc/init.d/
2023-04-14 15:40:51
2034
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅