- 博客(98)
- 收藏
- 关注
原创 BroadcastReceiver 广播-Android四大组件 一文精讲
看完学会:广播怎么注册,发送,接收,理解广播底层原理机制小白秒懂,老鸟完善的超全解析
2024-09-02 17:11:01
1934
原创 equals与== 区别,全面总结如何使用(Java)
深刻理解JVM的内存结构,再从String到所有引用类型、八大基本类型全面深度解析二者使用情况
2024-08-28 16:02:41
1242
原创 应用界面设计(原生,自定义控件,设计与交互-小白必看)
安卓界面布局,包括原生和自定义控件的定义与使用;界面与外部交互,接受信息的处理;最后资源、代码、控件优化
2024-08-21 12:34:22
438
原创 UML类图 30秒学会
强依赖,Bird主体消失,强引用Wing必须同时或提前消失。单个对象关联,只有mWing一个成员变量作为关联Wing。弱依赖,因为一个集合都是该依赖对象,多一个少一个无所谓。childA和B是继承于对象类Parent。语法:空心三角+实线,指向父类。一个集合都是关联的对象。
2024-07-16 19:31:55
843
原创 SQLite数据库与ROOM数据库
Entity@Dao@Insert@Delete带有@Database注解,注解相关联 数据实体该类为抽象类,继承并扩展RoomDatabase定义获取Dao类的抽象方法。
2024-07-15 10:27:14
837
原创 Android开发中架构模式--MVC/MVP/MVVM
View中调用Controller中的方法,把方法具体操作逻辑交给Controller实现。Controller中调用Model中的方法,把数据传给Model,让Model去处理数据。Model中调用View中的方法,把数据处理结果,由方法调用来更新UI界面。ViewModel中调用Model中方法,让Model处理数据。Presenter中调用Model中方法,获取处理后的返回值。View中调用ViewModel中的方法处理业务逻辑。View中调用Presenter中方法处理业务逻辑。
2024-07-12 19:39:11
2108
原创 Android数据库基础
原理底层是采用Binder机制为存储和获取数据提供统一接口,实现应用程序间数据共享通过URI可操作不同ContentProvider中数据外部进程可通过ContentResolver类与ContentProvider进行交互进程间数据交互与共享,实现跨进程通信ContentProvider相当于搬运工,真正数据源还是数据库、文件、XML、网络。
2024-07-11 19:18:29
1320
原创 Kotlin构造函数
class BAT private constructor(){ companion object{ //单例对象创建 } }构造器 constructor关键字前 无注解或修饰符作用,可直接省略。//在构造器声明,在init初始化程序块 初始化。// 在构造器声明,在类内部初始化。使外部无法通过主构造创建对象。
2024-07-09 17:54:29
1032
原创 三大消息传递机制区别与联系
属于安卓全局监听机制,接收系统或应用发出的消息(应用级)EventBus:应用内各组件间的解耦和消息传递(组件级,如Activity向Service传递信息):向用户通知消息(UI界面展示)1、定义区别:EventBus1、发布/订阅事件总线库 - 》“发布-订阅模式”2、异步分发3、应用组件间的解耦(不会直接相互引用)与消息传递4、EventBus适用于任何组件之间的通信,包括Activity、Fragment、Service等5、实现“一发多收”功能,发送后,多组件都能接受此事件。
2024-05-11 20:36:08
961
原创 二叉树的遍历算法
(3)每一层是检索 上一层更新的队列,但队列可能会在本层有新增结点——检索前先记录上一层队列数量,按此数量,一个个弹出队头并检索。(1)队列(先进先出)来迭代一层内的结点——更新队列,加入存在的左右子结点。当前结点-》左子结点1-》左子结点2-》右子结点2-》右子节点1。(2)直到下一层无结点,循环再停止——该层队列为空。下例:在记录本层数据后,无需返回上一层值,直到有结点为空停止。Java构造树结构——其实是 自定义树结点类型。原理 :(1)从上到下分层。(2)给上一层返回什么。(1)哪里进入下一层。
2024-04-29 21:05:52
472
原创 30s搞懂HashSet基本原理与方法
HashSet是个存数据的集合,在HashSet中只能输入一个值。所以允许(默认null)的(hashMap也不安全)
2024-04-22 21:31:14
269
原创 一篇文章搞懂-线程与携程
线程(Thread)是操作系统的资源,资源调度和执行的最小单位,创建、切换等操作消耗资源协程(Coroutine):无需操作系统,为编程语言自带。称为用户态线程,轻量级线程。
2024-04-15 14:52:27
598
1
原创 Java进阶篇——线程通信
Monitor——同步监视器,对象可以是任何类型,因此定义在Object类Condition——Lock对象创建,并依赖于Lock。
2024-04-15 14:09:24
309
原创 Java基础之注解
什么是注解?注解(Annotation):是对代码的的描述,以代码形式保存注解的本质: 特殊的声明注解: 创建了一个特殊接口使用注解: @注解名(创建注解的一个对象)
2024-04-15 12:02:44
346
原创 JAVA基础之反射
JAVA反射机制是在中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种的功能称为java语言的反射机制。
2024-04-15 11:25:12
267
原创 从零全面认识 多线程
多线程环境下,对共享资源的访问不会导致数据出错。因此和单线程执行相同的操作,结果相同多个线程相互等待对方释放资源,导致无法继续执行。
2024-04-14 14:57:05
945
原创 从零开始HashMap
从JAVA1.8开始,当链表长度达到8 && 数组容量达到64,则链表转化为红黑树:存储key经过hashcode()计算出的hash值:通过线性结构或树状结构存储hash值相同的value。
2024-04-13 15:01:16
728
原创 Java内存泄漏&内存溢出
OOM内存溢出是指应用程序尝试使用更多内存资源,而系统无足够的内存,导致程序崩溃。内存泄漏是指应用程序中分配的内存未能被正确释放,导致系统中的可用内存逐渐减少。
2024-04-12 20:08:40
402
原创 MVVM架构模式
: 数据劫持和发布-订阅模式:gettersetterObserver——》数据监听器。对数据对象属性进行监听,变化后通知订阅者Compiler——》指令解析器。扫描模板,指令解析,绑定事件Watcher——》订阅者。关联Observer和Compile,能够订阅并收到属性变动的通知,通过执行Update()执行指令绑定的相应操作,更新视图。
2024-04-12 19:00:32
527
原创 Java多线程开发——基础篇
多线程环境下,对共享资源的访问不会导致数据出错。因此和单线程执行相同的操作,结果相同多个线程相互等待对方释放资源,导致无法继续执行4.25.线程池的掌握。
2024-04-12 10:15:04
848
原创 Handler——小白能懂的原理,老鸟需要的面经
Handler内部通过与Looper和MessageQueue的配合,实现了消息处理和线程间通信的功能。子线程中不能直接new一个Handler,因为子线程默认没有Looper,而Handler的构造函数中需要传入一个Looper对象。主线程可以是因为主线程默认有与之关联的Looper。主线程的Looper第一次调用loop方法是在ActivityThread类的main方法中。
2024-04-12 00:37:50
1063
原创 RecyclerView与ListView区别
ListView是”一锅端”,将所有的mActiveViews都移入了二级缓存mScrapViews RecyclerView是灵活地对每个View修改标志位,区分是否重新bindView。其实ListView也可以局部刷新,不过要手动去Adapter中,实现一个onItemChanged()方法,在方法里面获取到这个item的position。但是ListView并没有实现动画效果,但我们可以在Adapter自己实现item的动画效果;
2024-04-11 13:58:22
1021
原创 RecyclerView的复用与回收
目录0.前言:推荐初学者阅读RecyclerView机制1.复用与回收的关系1.1复用流程1.2回收流程1.3复用与回收的先后关系2.刷新机制
2024-04-11 13:19:13
2091
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人