- 博客(66)
- 收藏
- 关注
原创 JUnit 测试框架详解:从实际开发、业务测试到 Java 面试高频问题
JUnit 是 Java 生态中最经典的自动化测试框架之一。编写测试管理测试执行测试判断测试结果生成测试报告} }} }} }} }Test;} }} }} }@Testactual: 3actual: 4JUnit 是帮助 Java 开发人员自动执行代码,并自动验证代码行为是否符合预期的测试框架。可以从几个方面判断。推荐回答:单元测试是针对程序中最小可测试单元进行验证的自动化测试。
2026-07-12 17:49:57
201
原创 JUnit 测试框架详解:从实际开发、业务测试到 Java 面试高频问题
JUnit 是 Java 生态中最经典的自动化测试框架之一。编写测试管理测试执行测试判断测试结果生成测试报告} }} }} }} }Test;} }} }} }@Testactual: 3actual: 4JUnit 是帮助 Java 开发人员自动执行代码,并自动验证代码行为是否符合预期的测试框架。可以从几个方面判断。推荐回答:单元测试是针对程序中最小可测试单元进行验证的自动化测试。
2026-07-12 17:49:03
216
原创 前端 GET 与 POST 请求详解:参数传递、缓存、安全、幂等性及高频面试题
GET与POST请求核心区别与使用场景 HTTP请求方法GET和POST的本质区别在于语义:GET用于获取资源,POST用于提交数据或创建资源。GET请求参数通常放在URL查询字符串中,适合查询操作,具有幂等性,容易被缓存;而POST请求数据放在请求体中,适合创建、修改等操作,默认不幂等,安全性取决于HTTPS而非方法本身。 关键区别包括: GET不应修改数据,POST通常会产生数据变更 GET可被缓存收藏,POST请求体不记录在历史中 GET参数长度受URL限制,POST受服务器配置限制 敏感数据应避免通
2026-07-10 19:37:08
286
原创 2026 年 ChatGPT 套餐怎么选?Free、Go、Plus、Pro、Business、Enterprise 一次讲清楚
Chat GPT Codex的各大订阅对比
2026-06-12 20:02:08
780
1
原创 Java浅拷贝和深拷贝理解笔记
浅拷贝指的是:创建一个新的外层对象,但是对象内部的引用类型字段,仍然指向原来的对象。Student s1 = new Student("Ken", new Address("西安"));Student s2 = s1 的浅拷贝;s1 和 s2 是两个不同的 Student 对象但是 s1.address 和 s2.address 指向同一个 Address 对象深拷贝指的是:创建一个新的外层对象,并且把对象内部引用的对象也重新复制一份。s1 和 s2 是两个不同的 Student 对象。
2026-06-04 21:23:32
218
原创 Java抽象类和接口区别_场景理解
文章摘要(150字) Java中抽象类和接口的核心区别在于:抽象类解决"是什么"(is-a)问题,定义同类事物的共性;接口解决"能做什么"(has-a)问题,描述跨类别的能力。抽象类通过继承关系抽取共性属性方法(如Animal类),强制子类实现抽象方法;接口则定义行为规范(如Flyable),允许类多实现不同能力。抽象类适合纵向的类层次设计,接口更适合横向的能力扩展,二者配合使用能构建更清晰的面向对象系统。
2026-06-04 20:33:02
319
原创 Token 统计中的“命中缓存”和“未命中缓存”是什么意思?
本文解释了AI模型Token统计中"命中缓存"和"未命中缓存"的含义。命中缓存指模型可以复用之前处理过的相同内容(如重复的项目代码、历史对话等),无需重新计算;未命中缓存则是需要重新处理的新内容或修改过的部分。输出Token则是模型生成的新回答内容。理解这些概念有助于优化提示词结构、提高缓存命中率,从而提升模型处理效率并可能降低成本。文章通过类比浏览器缓存和老师批改作业等生活化例子,帮助读者直观理解这些技术概念。
2026-05-10 00:44:19
8740
原创 一文看懂大模型中的 Context 和 Token:为什么它们决定了模型“能看多少、能记多远、能回答多长”
本文解释了大语言模型中的两个核心概念:Token和Context。Token是模型处理文本的基本单位,不等同于字数,不同语言的token切分方式不同。Context指模型单次推理时能参考的token范围,称为上下文窗口。文章详细比较了token与字数的关系,context与prompt、memory的区别,并说明大context窗口的优劣势。最后指出合理使用上下文(如通过RAG技术)能提升模型表现,但单纯增大context并不保证质量提升。理解这些概念有助于更有效地使用大语言模型。
2026-05-07 22:09:04
656
原创 如何理解神经网络中的权重参数?从一张图看懂模型参数量计算
这篇文章详细解析了神经网络参数的计算方法,主要分为权重(weights)和偏置(biases)两部分。通过一个784-16-16-10的全连接网络示例,具体说明了权重参数的计算方式(层间神经元全连接的数量积)和偏置参数的计算(每层神经元数量之和)。文中指出训练模型本质上就是通过反向传播不断调整这些参数,使模型输出更接近正确答案。同时讨论了参数数量与模型性能的关系,指出参数过多可能导致过拟合和计算成本增加。最后给出了通用的神经网络参数量计算公式,强调参数优化需要在模型容量、数据量和计算资源间取得平衡。
2026-05-07 22:02:14
475
原创 理解_lambda_表达式
简单来说,lambda 表达式是一种用来创建匿名函数的简洁写法。所谓匿名函数,就是没有名字的函数。这个函数的名字叫add,它接收两个参数x和y,返回它们的和。从效果上看,这两个函数都能完成加法操作。但 lambda 表达式通常用于逻辑很简单、临时使用、不值得单独定义函数名的场景。
2026-04-24 15:21:20
482
原创 idea中快捷键详细总结整理
Ctrl + 鼠标左键Ctrl + B用于跳转到变量、方法、类的定义位置。无需跳转到文件中,就可以弹出一个小窗口查看定义内容。IntelliJ IDEA 的快捷键体系非常强大,熟练使用后可以明显提升编码效率。对于初学者来说,不需要一开始就记住所有快捷键,而应该从最常用、最能提高效率的快捷键开始。Alt + Enter 快速修复 / 自动导包Ctrl + Alt + L 格式化代码Ctrl + Alt + O 优化导入Ctrl + D 复制当前行Ctrl + / 注释代码。
2026-04-24 12:18:57
630
原创 电脑中的16GB内存、32GB内存、32位系统、64位系统到底是什么意思?一文彻底搞懂
本文深入浅出地解析了计算机内存与系统位数的核心概念。16GB/32GB内存指的是主存(RAM)容量,用于临时存储运行中的程序数据;32位系统因地址空间限制通常只能识别约4GB内存,而64位系统则能支持更大内存。文章通过"工作台"比喻形象说明内存作用,并澄清内存与硬盘的本质区别:内存负责程序运行,硬盘负责数据存储。随着现代软件对资源需求的提升,64位系统因其更大的地址空间和更优的性能已成为主流选择。文中还详细解释了32位与64位系统在地址空间、寄存器宽度等方面的根本差异,帮助读者从专业角度
2026-04-16 15:48:55
726
原创 Java方法重载彻底搞懂:求两个数、三个数到十个数的和,到底该怎么写?
本文通过求和方法案例详细讲解Java方法重载的概念与应用。方法重载指在同一个类中,方法名相同但参数列表(个数、类型或顺序)不同的多个方法。文章首先展示不同参数个数的sum()方法重载示例,强调返回值不同不能构成重载。随后指出实际开发中可变参数(int... nums)是更优解,可避免编写多个重载方法。最后区分学习场景与项目实践的不同写法:考试时应按要求写多个重载方法,而实际开发推荐使用可变参数实现灵活求和。全文清晰阐释了重载的判断标准、常见误区及最佳实践。
2026-04-16 14:56:04
320
原创 Java中的char类型为什么可以直接运算?比如 char a = ‘A‘
Java中的char类型本质上存储的是字符的Unicode编码值,因此可以像整数一样参与运算。当char进行算术运算时,会自动提升为int类型,导致结果变为数值而非字符。要得到字符结果,需将运算结果强制转换回char。这种设计使字符能方便地进行比较、转换等操作,体现了"字符本质上是编码值"的特性。理解这一点对掌握Java类型转换和字符处理非常重要。
2026-03-28 16:18:20
236
原创 Java中 next() 和 nextLine() 有什么区别?一篇文章彻底搞懂
本文详细解析了Java中Scanner类的next()和nextLine()方法的区别。next()只读取到第一个分隔符(空格/Tab/回车)前的内容,适合输入单个单词;nextLine()读取整行内容直到回车,适合输入含空格的字符串。特别指出nextInt()后接nextLine()时容易出现的读取问题,建议在二者之间加sc.nextLine()"吃掉"多余的回车符。文章通过示例代码和对比表格清晰展示了两种方法的使用场景和注意事项。
2026-03-28 15:36:19
235
原创 计算机中的最小存储单元是 bit 还是 Byte?终于搞清楚了
这篇文章探讨了计算机中最小的存储单元究竟是bit还是Byte的问题。文章首先明确指出最小存储单元是bit(比特),因为它是二进制中的一位,只能表示0或1,是最基本的信息单位。同时解释了Byte(字节)是由8个bit组成的常用存储单位,计算机通常按字节编址和存储数据。文章分析了人们混淆两者的原因:bit是最小信息单位,而Byte是最小可寻址单位。通过对比表格和字符"A"的二进制表示例子,清晰展示了bit与Byte的关系(1 Byte = 8 bit)。最后总结强调:bit是最小存储单元,B
2026-03-28 12:23:21
590
原创 IDEA中 Module 和 Package 是一样的吗?看完终于搞懂了
本文主要区分了IntelliJ IDEA中Module和Package的概念差异。Module是项目层面的模块化单位,用于拆分大型项目,可包含独立配置和依赖;Package是代码层面的组织方式,用于管理类的归属和结构。两者的层级关系为:Project→Module→Package→Class。日常开发中,代码分类用Package,项目拆分用Module。关键区别在于:Module用于项目管理,Package用于代码组织。
2026-03-28 11:20:38
496
原创 Word文档能正常打开,图标却变成了“白纸”?注册表修复全记录
作为开发者或深度用户,我们经常会折腾开发环境和系统配置。虽然重装 Office 也能解决问题,但通过定位 DefaultIcon 精准修复,不仅效率更高,也是一次理解 Windows 底层文件系统逻辑的好机会。希望这个小技巧能帮到同样看着“白纸”图标强迫症发作的你。
2026-01-24 16:34:05
1299
原创 Ken的Java学习之路——面向对象进阶(static&继承)
/ 成员变量// '男' '女'// 无参数构造方法// 有参数构造方法我们已经知道面向对象中,存在类和对象的概念,我们在类中定义了一些成员变量,例如name,age,sex ,结果发现这些成员变量,每个对象都存在(因为每个对象都可以访问)。而像name ,age , sex确实是每个学生对象都应该有的属性,应该属于每个对象。所以Java中成员(变量和方法)等是存在所属性的,Java是通过static关键字来区分的。static关键字在Java开发非常的重要,对于理解面向对象非常关键。
2025-11-24 11:27:20
1187
原创 Ken的Java学习之路——集合ArrayList
什么是集合 提供一种存储空间可变的存储模型,存储的数据容量可以发生改变ArrayList集合的特点 长度可以变化,只能存储引用数据类型。泛型的使用 用于约束集合中存储元素的数据类型(类似于我们C的结构体)//下面是空参,有参,get和set方法loop:System.out.println("-----------------欢迎来到黑马学生管理系统-------------------");System.out.println("1:添加学生");
2025-11-24 10:44:11
820
原创 Ken的Java学习之路——StringJoiner
先检查字符串常量池中有没有字符串abc,如果有,不会创建新的,而是直接复用。如果没有abc,才会创建一个新的。结论:==只能用于比较基本数据类型。不能比较引用数据类型。s2是直接赋值的,所以记录的是字符串常量池中的地址值。如果比较的是基本数据类型:比的是具体的数值是否相等。如果比较的是引用数据类型:比的是地址值是否相等。所以,直接赋值的方式,代码简单,而且节约内存。 此时字符串abc是存在字符串常量池中的。s1记录的是new出来的,在堆里面的地址值。==号比较的到底是什么?字符串存储的内存原理。
2025-11-14 08:44:57
251
原创 Ken的Java学习之路——StringBuilder
StringBuilder 可以看成是一个容器,创建之后里面的当我们在拼接字符串和反转字符串的时候会使用到。
2025-11-14 04:00:00
328
原创 Ken的Java学习之路——String类以及练习
String 类代表字符串,Java 程序中的所有字符串文字(例如“abc”)都被实现为此类的实例。也就是说,Java 程序中所有的双引号字符串,都是 String 类的对象。String 类在 java.lang 包下,所以使用的时候不需要导包!
2025-11-14 03:30:00
927
原创 到底要不要充 Plus?还是该上 Business?一文讲清 ChatGPT 套餐怎么选
最近可能官方活动,较低的价格可以体验Business和Plus,大家把握住去体验。有问题可以交流,关于使用等,共同进步!
2025-11-13 15:25:04
10134
原创 Ken的Java学习之路——关于面向对象的练习
格斗游戏,每个游戏角色的姓名,血量,都不相同,在选定人物的时候(new对象的时候),这些信息就应该被确定下来。定义一个长度为3的数组,数组存储1~3名学生对象作为初始数据,学生对象的学号,姓名各不相同。 长相是提前定义好的,提前放在一个数组当中,程序运行之后,从数组中随机获取。 乔峰举起拳头打了鸠摩智一下,造成了XX点伤害,鸠摩智还剩下XXX点血。 鸠摩智举起拳头打了鸠摩智一下,造成了XX点伤害,乔峰还剩下XXX点血。 乔峰举起拳头打了鸠摩智一下,造成了XX点伤害,鸠摩智还剩下XXX点血。
2025-11-12 22:53:05
826
原创 Ken的Java学习之路——Java中关于面向对象
类的组成是由属性和行为两部分组成属性:在类中通过成员变量来体现(类中方法外的变量)行为:在类中通过成员方法来体现类的定义步骤:①定义类②编写类的成员变量③编写类的成员方法public class 类名 {// 成员变量变量1的数据类型 变量1;变量2的数据类型 变量2;// 成员方法方法1;方法2;/*手机类:类名:手机(Phone)成员变量:品牌(brand)价格(price)成员方法:打电话(call)发短信(sendMessage)*///成员变量。
2025-11-12 22:49:14
1161
1
原创 Ken的Java学习之路——Java中的数组
本文介绍了Java数组的基础概念和使用方法。主要内容包括:数组的定义(静态和动态初始化)、地址值含义、元素访问、索引特性、遍历方式以及常见问题。静态初始化适用于已知元素值的情况(如int[] arr = {1,2,3}),动态初始化则用于确定长度但未知元素值的场景(如int[] arr = new int[5])。文章还讲解了数组的默认初始化值、索引越界异常及两个典型练习:数组求和和统计能被3整除的元素个数。最后比较了两种初始化方式的区别和使用场景。
2025-11-03 11:16:08
876
原创 Ken的Java学习之路——Java中的高级循环(习题)
本文介绍了Java编程中的循环控制结构及相关概念,主要内容包括: 无限循环(死循环)的三种实现方式:for循环(for(;;))、while循环(while(true))和do-while循环(do{...}while(true)),其中while循环最为常用 循环控制语句: break:结束整个循环或switch结构 continue:跳过本次循环,继续下次循环 两者区别对比表,详细说明了适用场景和语法特点 四个典型练习题: 逢七过游戏:识别包含7或是7的倍数的数字 计算平方根:只保留整数部分 判断质数:
2025-11-03 11:05:08
1040
原创 Ken的Java学习之路——Java中的控制语句
本文介绍了Java中的流程控制语句,包括顺序结构、判断结构(if语句、switch语句)和循环结构(for循环)。详细讲解了if语句的三种格式及其执行流程,switch语句的语法和使用场景,以及for循环的结构和书写技巧。通过示例代码展示了如何运用这些控制语句实现不同的程序逻辑,如条件判断、分支选择和循环执行等。文章还特别强调了流程控制语句对程序执行结果的重要影响,并提供了常见问题的解决方案。
2025-10-31 20:53:04
592
原创 第一篇正式的博客2025年10月30日
今天2025年10月30日,天气阴天,今天开始想要记录一些自己的学习过程,目的其一,当作个人的笔记,方便日后回顾;其二,记录自己的心态过程,路虽远,行则将至;其三,希望在这里可以和大家交流技术,交流思想,互相学习以及共同进步!
2025-10-30 09:59:06
213
原创 一文掌握 Java 键盘输入:从入门到高阶(含完整示例与避坑指南)
Java键盘输入处理指南 本文系统讲解Java处理键盘输入的三种方案:(1)Scanner易用但需注意换行问题;(2)BufferedReader+InputStreamReader高效可控,适合大数据;(3)Console支持密码隐藏输入但IDE不可用。关键点包括:字节流到字符的转换、编码/Locale影响、行结束符处理,以及各方案的性能差异和使用场景。推荐Scanner用于日常开发,BufferedReader处理性能敏感场景,Console用于终端交互工具。
2025-08-24 21:50:36
811
原创 深入解码 Docker 镜像与容器的奇妙世界
Docker镜像作为静态只读快照,通过分层文件系统实现高效构建与存储优化。本文深入解析Docker镜像本质、Dockerfile指令最佳实践,并展示多阶段构建示例。Docker解决了环境一致性、自动化搭建等五大核心痛点,通过Python Web镜像实战演示了镜像瘦身与性能调优技巧。最后探讨了Docker与Kubernetes的深度融合,包括镜像拉取策略、版本管理和私有仓库鉴权。Docker镜像作为云原生时代的交付利器,与CI/CD等生态协同,构建了端到端的自动化平台。
2025-07-11 22:32:34
1210
1
基于微信小程序的乐室预约系统设计与实现+ssm框架+java(毕业设计)
2025-04-16
基于微信平台的旅游出行必备商城小程序+ssm.rar
2025-04-14
基于SSM框架和vue的《高校办公室行政事务管理系统设计与实现》
2025-04-11
基于springboot+Mvn+java实现的《图书馆管理系统》
2025-04-11
基于springboot框架的《精准扶贫管理系统》(Web项目java实现)
2025-04-11
基于springboot框架的《精品在线试题库系统》设计与实现
2025-04-11
基于springboot框架的校园社团信息管理
2025-04-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅