- 博客(25)
- 收藏
- 关注
原创 TCP之滑动窗口 (1)
首先 窗口的大小是不变的,变化的是里面的内容。在窗口的视角下数据被分为 一下几个东西已发送而得到确认的消息 --》 不在发送范围内已发送而未收到确认的消息 --》 在—未发送但是 窗口还有剩余的位置 --》 在–未发送但是超过大小的位置 --》 不在–我们如何实现一个滑动窗口必须的字段 : window 大小 ,una 是已发送但未确认的 nxt 是未发送的第一个字节的位置然后可用窗口的大小就可以 = window - (nex - una)
2025-02-07 18:15:08
284
原创 升级到Android14后广播无法使用的bug
而且在Andorid 14中 你的service 和activity contentProvider 等 四大件 在manifest里面都应该申明为export属性 然后才可以正常使用。原来的为registerReceiver(this,intentFliter)Android 14 的广播receiver 必须要。也就是说最后那个参数必须加上 然后就恢复正常了。
2024-10-25 20:41:45
525
原创 java class类文件加载解析(20241024)
.class 文件又被叫做字节码。字节码不面向任何的处理器, 他就是为了java虚拟机而生,一定程度上解决了解释型语言执行效率低的问题然后保留了解释型语言可以移植的特点。它的生命周期可以分为7类。加载 、 验证 、 准备 、 解析 、 初始化 、 使用 、卸载 。其中验证,准备,解析 又叫做连接。第一步,通过类的全名获得定义此类的二进制字节流第二部,将这个二进制字节流代表的静态储存结构转化为方法区运行时的储存结构。第三步,在内存中生成一个该类的class对象,作为一些方法区的入口 。具体实现: 首先,我们
2024-10-24 20:10:55
630
原创 java对象创建的过程详解
在java虚拟机栈里的栈帧里会有一个指向句柄的指针,一个对象句柄又包含了 指向对象类型和对象实例的指针。这届指向对象的实例数据, 然后这个里面包含了指向对象类型数据的指针。类型指针(Klass Word):对象指向它的类元数据的指针,虚拟机通过这个指针来确定这个对象是哪个类的实例。在虚拟机会维护一个列表,会记录那个空间是可以用的,在分配的时候,找一个足够大的来分配给他就行 然后更新列表。优势: 直接指针快, 句柄的话,如果对象位置改变了,那么只需要改变句柄对应的指针,不需要挨个改了。如何对他进行定位的。
2024-10-24 18:42:39
523
原创 运行时常量池是什么(20241024)
他是一种储存在方法区的数据结构。用于储存编译时期生成的字面量和符号引用。在java虚拟机加载类文件的时候 会把 类、接口、方法名、字段名等放入常量池。
2024-10-24 16:23:02
423
原创 Android进阶————Activit的生命周期和启动模式
activity的几种状态 :7种oncreate 初始化 和setcontentviewonStart 即将可见onresume 完全可见 显示到前台onRestart 从不可见的状态到可见 这里一般是从onstop状态回来的onpause 正在停止 stop前的一点时间 这里不能执行耗时操作 因为会影响其他activity的打开。
2024-09-08 19:36:06
605
原创 Andorid-Motionlayout 简单理解和学会使用
将constraintlayout版本升级 更换为如上依赖。(只要是2.0以上就可以使用android Motionlayout 简单使用首先: 我们创建一个constrainlayout右键 转化为Motionlayout任意拖入两个控件在转为Motionlayout的时候 会自动生成如下的文件 MotionLayout 的动画和过渡效果可以通过 MotionScene 文件来定义和控制。
2024-09-03 21:14:01
442
原创 viewmodel解决创建闪退的方法
但是,一旦我们自己给viewmodel自定义了一个构造函数。因为默认是不带构造函数的,所以会导致工厂类 Factory无法给你创建这个相应的。类似于 这样 自己擅自加了自定义构造函数 然后创建的时候没有改变默认的viewmodelProvider的方法。: 既然没有,我们就自定义一个工厂类,自己给自己创建,然后 传入参数的时候把这个工厂类也传进去就可以。为什么呢 , 首先,我们只传入this,表示用的默认的Factory来创建viewmodel。
2024-06-14 17:41:06
505
原创 解决kotlin compiler embeddable 下载巨慢的问题 !
在这行添加 代码:maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}这个是要添加的:maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/'}在github上拉取项目的时候莫名其妙的卡在了 kotlin compiler embeddable downLoading。在官网下载了相应版本的jar包导入在 乱码文件夹中 ,类似于网络上其他解法。
2024-05-30 21:54:36
3755
原创 HTTPS的本质和连接
SSL : Secure Socket Layer->后来出来TLS Transport Layer SecuritySocket : 端口 Layer 层 安全端口层 Transport 运输安全层。
2023-12-12 12:56:50
126
原创 kotlin 协程
上述代码 enqueue (callback) 是属于lambda 表达式里的内容 这时协程处于挂起状态 也就是切线程的来执行 lambda表达式里的内容 正好这里是一个网路请求的耗时操作 然后 等到网络回复 协程就设为恢复 恢复到主线程执行 这里就完成了异步请求。当 执行完之后 suspend something() 函数里会有一个 resume()的方法 表示协程的恢复 执行到resume之后 println() 这个代码 会在主线程执行 因为suspend something 已经把协程恢复了。
2023-11-23 22:00:54
109
原创 第一行代码 彩云天气app 书上的bug 写法 observe传入报错,彩云天气 数据模型重要性
报错 use viewlifecycle owner as lifecycleowner。
2023-11-20 15:38:36
158
1
原创 彩云天气 APP 获取视图 view注意点---第一行代码
一般来说,如果你确定视图在当前的生命周期阶段已经创建,并且视图不会为空,那么使用。总而言之,根据具体的场景和需求选择适当的获取视图的方式。这样,即使视图尚未创建,你也可以安全地处理并避免可能的空引用异常。它能够在获取视图时提供非空的保证,避免了使用可空类型的繁琐处理。然而,如果你不确定视图的创建时机,或者需要在早期的生命周期阶段使用视图,那么使用。如果对视图的创建时机不确定或需要处理可能的空引用,那么使用。这种方式适用于当视图可能为空时的情况,例如在。的生命周期中确保视图已经创建的情况。
2023-11-20 15:27:07
134
1
原创 java 和kotlin里 class 的修饰符的集合 与kotlin的区别
【代码】java 和kotlin里 class 的修饰符的集合 与kotlin的区别。
2023-11-03 20:56:37
73
原创 Kotlin 与java 在面对对象时的相同与不同(超详细)
对于java 一个类本身就可以被继承 (除非你加了final关键字)而对于kotlin 一个类想要被继承 必须加上关键字。
2023-10-27 21:26:59
118
1
原创 android sync 报错 android.overridePathCheck=true
这是用于解决网络问题 其实自己仔细读一下报错原因就可以发现 就是缺少了这一句话。这是在拉取学长代码时遇到的问题。
2023-10-24 17:31:45
4168
1
原创 android gradle 自己下载 然后导入
创建一个新项目,进入界面后,左下角出现两个对号,表示正在自动解压下载的压缩包;耐心等待几分钟就会全是对号了;因为第一步创建了一个项目,把这个项目删除(先把程序关闭才可以删除);首先 我们要注意 gradle保存的地方。我们要先在as中打开我们要接手的项目。之后你要在 官网把 这个东西下好。
2023-10-24 17:23:33
2254
4
原创 lab1 Data lab
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?58113)
2023-10-18 21:04:16
143
1
原创 android 出现Duplicate class 报错时 解决方案
可以选择直接复制 我的标题 然后sync 就ok了useAndroidX 就是然他用androidx库不用supportenableJetfilter 就是迁移第三方库的作用 androidX的依赖项因为你想要用androidX库里的东西 所以你要用enableJetfliter来迁移他的库来与你的适配。
2023-09-27 21:17:30
5000
2
原创 mysql小小的记录
先把 基础写出来 select name,age from emp 我要什么 最后要查出来什么 就放select后面表之后 加条件 进行过滤group by 是最基础的 作为分组的依据 先写好这个 (如果要的hua)limit是最后面的from 表名 where 条件 group by 分组的条件 select 字段列表 选择 order by 排序 limit 分页 having最后过滤。
2023-09-23 18:41:37
69
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人