Q_Qi66
码龄1年
求更新 关注
提问 私信
  • 博客:8,768
    8,768
    总访问量
  • 21
    原创
  • 28
    粉丝
  • 3
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:天津市
加入CSDN时间: 2025-03-07
博客简介:

Q_Qi66的博客

查看详细资料
个人成就
  • 获得165次点赞
  • 内容获得0次评论
  • 获得105次收藏
  • 博客总排名92,767名
  • 原力等级
    原力等级
    2
    原力分
    132
    本月获得
    0
创作历程
  • 21篇
    2025年
成就勋章

TA关注的专栏 0

TA关注的收藏夹 0

TA关注的社区 0

TA参与的活动 0

创作活动更多

「谁说嵌入式只是调包和焊板子?」—— 2026嵌入式全栈技术征锋令

谁说嵌入式只会“Ctrl+C 调包”和“拿电烙铁焊板子”?2026嵌入式全栈技术征锋令正式启幕! 本次活动专为硬核硬件/软件开发者打造,无论你是刚玩转裸机外设的萌新,还是精通RTOS调度、死磕底层驱动的行业老手,亦或是执掌系统架构的大神,这里都是你证明实力的舞台! 拒绝表面功夫,每一行代码,都有撬动硬件的力量!晒出你的硬核工程实战,为嵌入式开发者的全栈硬实力正名!

210人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

Java —io流

try(FileOutputStream fos=new FileOutputStream("路径")){fos.write("内容".getBytes());✔️字节流:万能读写(文件/音频/视频),顶层InputStream(读)/OutputStream(写)
原创
博文更新于 2025.12.28 ·
241 阅读 ·
10 点赞 ·
0 评论 ·
5 收藏

Java—多线程

(一)多线程计算机中的CPU即使是单核可以同时运行多个任务,因为操作系统执行多个任务时就是让CPU对多个任务轮流交替执行。Java是支持多线程的语言之一,它内置了对多线程技术的支持,可以使程序同时执行多个执行片段。(二)进程 进程(正在运行的程序)是每个独立执行的程序。多进程稳定性比多线程高,一个进程崩溃不会影响其他进程。(三)线程线程:每个运行的程序都是一个进程,在一个进程中还可以有多个执行单元同时运行,这些执行单元可以看作程序执行的一条条线索。操作系统中的每一个进程中都至少存在一个线程。1。单线程程序:
原创
博文更新于 2025.12.24 ·
490 阅读 ·
8 点赞 ·
0 评论 ·
3 收藏

Java—异常

(3)语法:修饰符 返回值类型方法名(形参列表)throws异常类名1,异常类名2,异常类名30(4)结果:消极处理异常只是推卸责任,程序还是会因异常而被终止。(2)非RuntimeException:非运行时异常,已检查异常,与RuntimeException没有任何的继承关系的异常类 a。(1)RuntimeException:运行时异常,未检查异常,与RuntimeException有直接或是间接继承关系的异常类。(2)结果:程序中一旦遇到异常,则被终止,不能继续执行异常之后的代码。
原创
博文更新于 2025.12.24 ·
329 阅读 ·
6 点赞 ·
0 评论 ·
4 收藏

Java——集合(List Set Map)

b.HashSet保证元素不重复执行的原理:对象往HashSet集合中存储时,当前对象调用自身hashCode方法,获取哈希码值,从而获取对应存储下标,如果存储下标上没有存储任何元素,则当前对象直接存储,但是如果存储下标上已经有存储了其他对象,则调用equals方法,进行比较对象的内容是否相同,equals方法的结果为true,代表相同内容的对象,则HashSet集合拒绝添加,equals方法结果为 false,则代表内容不同的对象,则成功添加到HashSet集合中。(4)遍历:详见子接口。
原创
博文更新于 2025.12.08 ·
959 阅读 ·
23 点赞 ·
0 评论 ·
5 收藏

String类

注意: String类中封装了一个char类型数组,下标范围0~字符串的长度-1,如果指定的下标超出下范围,则运错,错误信息为:ava.lang.StringIndexOutOfBoundsException(数组下标越(2) boolean contains(String str):判断一个字符串中是否包含str子串,包含-true;(6) String[ split(String str):将当前字符串进行拆分,拆分结果封装为一个String类型的数组。注意:String s= "a" + "b";
原创
博文更新于 2025.12.03 ·
295 阅读 ·
4 点赞 ·
0 评论 ·
4 收藏

Java- Object类

• 重写规则:与equals()强关联,若x.equals(y)为true,则x.hashCode()必须等于y.hashCode();• wait():使当前线程进入等待状态,释放对象锁,需在synchronized代码块中调用,等待其他线程调用notify()/notifyAll()唤醒。◦ 传递性:若x.equals(y)和y.equals(z)为true,则x.equals(z)为true。• 特性:方法被final修饰,无法重写,返回的Class对象是唯一的,可用于判断对象的实际类型。
原创
博文更新于 2025.12.02 ·
288 阅读 ·
4 点赞 ·
0 评论 ·
3 收藏

包装类(位于java.lang包中)

(1)JDK5.0之后提供自动装箱和自动拆箱的功能,基本数据类型和对应包装类型之间可以相互自动转换(2)自动装箱:基本数据类型可以直接赋值给其对应的包装类型。//自动拆箱(4)自动装箱实现的原理:自动装箱底层调用的时Integer类中静态的valueOf方法:[面试难点]注意:Java中将-128-127常用数据段的内容进行了预先的包装处理,转换数据只要在-128-127之间不需要每次创建对象,而是从处理结果中直接获取即可,-128-127处理结果存储在缓冲区中、常量池。-->区分有效数据和无效数据的。
原创
博文更新于 2025.11.27 ·
236 阅读 ·
5 点赞 ·
0 评论 ·
5 收藏

java常用类— Object类

(1)Object 类位于java.lang包中,是继承关系的根类、超类,是所有类的父类(直接的父类或是间接父类)(2) Object类型的引用可以用于存储任意类型的对象。将所有的垃圾对象一次性进行回收,垃圾回收器进行回收垃圾对象时,自动调用finalize方法。1.如果==两端为基本数据类型的变量,则判断变量中数值是否相同如果==两端为引用类型的变量,则判断引用中存储的地址是否相同。引用类型:equals比较。注意:由于不同的对象在堆空间中有不同的十六进制的地址,所有不同的对象具有不同哈希码值。
原创
博文更新于 2025.11.26 ·
665 阅读 ·
4 点赞 ·
0 评论 ·
6 收藏

Java 中 Object 类的方法

2、hashCode():返回对象的哈希码值,主要用于哈希表(如 HashMap、HashSet),重写equals ()方法时必须重写hashCode()方。1. 直接调用Object的方法:自定义类可直接使用toString()、equals()等Object的方法;getClass()、wait()、notify()等方法被final修饰,子类无法修改其逻辑。5、wait()/notify()/notifyAlI():用于线程间的协作和通信,这些方。对象),通常需要重写该方法以实现对象内容的比较。
原创
博文更新于 2025.11.26 ·
264 阅读 ·
6 点赞 ·
0 评论 ·
5 收藏

Java——接口[特殊字符]

接口是 Java 中一种特殊的抽象类型,用 interface 关键字定义,它是方法规范的集合,只声明方法签名(返回值、方法名、参数 ),不包含方法实现(JDK 8 后可含默认方法、静态方法 ,但核心仍为抽象约定 )。例:Java 集合框架中,List、Set 接口规范了集合的基本行为(add、remove 等 ),ArrayList、HashSet 等实现类需严格实现这些方法,保证集合使用的一致性。方法 抽象方法(默认 public abstract )、默认方法、静态方法 抽象方法、普通方法(带实现)
原创
博文更新于 2025.06.18 ·
420 阅读 ·
5 点赞 ·
0 评论 ·
9 收藏

Java——多态的应用

调用时,用 Pay 父类引用统一处理,新增支付方式(如 ApplePay ),只需扩展子类,无需修改调用代码。• 父类引用指向子类对象(向上转型 ):用父类类型声明变量,实际赋值子类对象(如 Animal dog = new Dog();价值:同一遍历逻辑,适配任意图形子类,新增图形(如 Triangle )只需扩展 Shape ,遍历代码无需修改,灵活应对需求变化。• 继承/实现关系:类继承父类(如 Dog 继承 Animal ),或类实现接口(如 ArrayList 实现 List )。
原创
博文更新于 2025.06.18 ·
538 阅读 ·
7 点赞 ·
0 评论 ·
9 收藏

Java——面向对象的三大特性

• 概念:让一个类(子类、派生类)可以继承另一个类(父类、基类)的属性和方法,子类还可扩展自身特有的属性和方法,实现代码复用。在 Java 中,通过 extends 关键字实现继承(一个子类只能直接继承一个父类,即单继承,但可通过接口实现类似多继承的效果 )。• 概念:把对象的属性(成员变量)和行为(成员方法)结合为一个整体,隐藏对象的实现细节,仅对外暴露有限的、可控的访问方式。◦ 建立类之间的层次关系,体现“is - a”关系(如“狗”是“动物”的子类 ),让程序结构更清晰,便于理解和扩展。
原创
博文更新于 2025.06.18 ·
358 阅读 ·
7 点赞 ·
0 评论 ·
6 收藏

Java——三个修饰符

• 作用:被protected修饰的成员可以在当前类、同包中的其他类,以及子类(无论是否在同包)中被访问。• 还有非访问修饰符(如static、final等),用于定义成员的特性(如静态属性、不可变变量等)。protected void protectedMethod() { // 受保护方法。// 私有变量,仅当前类可访问。• 作用:被public修饰的成员(类、方法、变量)可以在任何包、任何类中被访问。public class MyClass { // 公共类,其他包也能访问。
原创
博文更新于 2025.06.18 ·
445 阅读 ·
7 点赞 ·
0 评论 ·
5 收藏

Java——面向对象

• 示例场景:父类“动物”有“叫声”方法,子类“猫”和“狗”重写该方法,调用时会根据实际对象类型执行对应逻辑。1. 万物皆对象:将现实世界中的事物抽象为程序中的“对象”,每个对象具有状态(属性) 和行为(方法)。• 概念:将对象的属性和方法“包装”在一起,隐藏内部实现细节,只暴露必要的接口(方法)给外部使用。• 概念:同一操作作用于不同对象,会产生不同的执行结果(即“同一个方法,不同的表现”)。• 关键词:extends,子类继承父类后,可新增自己的属性和方法,或重写父类方法。
原创
博文更新于 2025.06.18 ·
474 阅读 ·
6 点赞 ·
0 评论 ·
7 收藏

Java语言—数组

Java 提供 Arrays 工具类,里面有很多好用的方法,比如排序(sort )能把数组元素排好序,填充(fill )可以把数组全设成某个值,查找(binarySearch )能快速找元素(不过得先排序 ),复制(copyOf )能创建新数组复制原数组内容。• 动态初始化: 既声明又给数组分配空间,比如 new int[5] ,创建一个能装 5 个整数的数组,不过元素会有默认值(像整数默认 0 ,布尔型默认 false ,引用类型默认 null )。• 内存连续 :存数据紧凑,对批量数据存储友好。
原创
博文更新于 2025.06.18 ·
419 阅读 ·
6 点赞 ·
0 评论 ·
5 收藏

Java的循环结构

2. 执行逻辑:先初始化循环变量,再判断条件表达式,若为真执行循环体,接着更新循环变量,重复“判断 - 执行 - 更新”流程,直到条件不满足退出。2. 执行逻辑:先执行一次循环体,再判断条件表达式,若为真继续执行循环体,重复“执行 - 判断”,条件为假则停止。跳过当前次循环剩余的代码,直接进入下一次循环的条件判断,常用于筛选符合条件的循环执行,跳过不满足要求的单次循环。2. 执行逻辑:先判断条件表达式,若为真执行循环体,执行完再次判断条件,如此反复,条件为假则结束循环。
原创
博文更新于 2025.06.18 ·
575 阅读 ·
12 点赞 ·
0 评论 ·
9 收藏

Java的分支结构

• 传统形式:根据变量值与多个case常量进行匹配,匹配成功执行对应代码块,需用break跳出避免穿透。• if-else if-else:支持多个条件判断,按顺序检查条件,满足条件的分支执行,其余跳过;switch语句变量类型通常为byte、short、int、char、String、枚举等。适用于固定值匹配场景,如枚举、字符串、整数等类型。• if-else:增加else分支,条件为真执行if块,为假执行else块,实现二选一逻辑。• 基本if:通过布尔条件判断是否执行代码块,条件为真时执行。
原创
博文更新于 2025.06.17 ·
284 阅读 ·
10 点赞 ·
0 评论 ·
5 收藏

Java的基本数据类型

Java语言也可以把字符作为整数对待,因为Unicode编码采用无符号编码,可以存储65536个字符(0x0000~0xffff),几乎可以处理所有国家的语言文字。因为2147483648超过了int自身的范围,所以编译不通过,可以在数值后面加一个l,表示这是一个long型的整数。内存空间是32位,取值范围-2147483648~2147483647 int型是Java整型值的默认数据类型。Java默认的整数类型为int,当数值没有超过byte的取值范围时,会自动转换,超过byte的值时,编译不通过。
原创
博文更新于 2025.06.17 ·
627 阅读 ·
17 点赞 ·
0 评论 ·
5 收藏

Java环境搭建

• 双击“系统变量”中的“Path”变量,点击“新建”,输入“%JAVA_HOME%\bin”。• 创建Java类,在项目的“src”目录上右击,依次点击“New”→“Class”,输入包名和类名,可勾选自动生成主方法,点击“Finish”。• 创建Java项目,依次点击“File”→“New”→“Java Project”,输入项目名称等信息后点击“Finish”。以Eclipse为例,从官网下载解压后即可使用。• 右键点击“此电脑”,选择“属性”,点击“高级系统设置”,在弹出窗口中点击“环境变量”。
原创
博文更新于 2025.06.17 ·
247 阅读 ·
5 点赞 ·
0 评论 ·
0 收藏

Deepseek的发展与应用

进入2025年,DeepSeek更是势如破竹,1月发布的DeepSeek - R1模型在性能上比肩OpenAI o1正式版,迅速在全球范围内走红,其应用登顶多个国家和地区的苹果应用商店免费APP下载排行榜,成为史上最快达成日活跃用户数突破3000万大关的应用。在教育领域,DeepSeek可以为学生提供个性化的学习辅导,根据学生的学习情况和特点,制定专属的学习计划,帮助学生提高学习成绩;在医疗领域,辅助医生进行疾病诊断和药物研发,通过分析大量的医疗数据,为医生提供诊断建议和治疗方案参考,提高医疗质量和效率。
原创
博文更新于 2025.03.21 ·
325 阅读 ·
4 点赞 ·
0 评论 ·
4 收藏
加载更多