- 博客(126)
- 收藏
- 关注
原创 【Git版本控制】分支管理(含快进模式与非快进模式区别、分支开发策略、git branch/git checkout/git merge/git stash应用等)
Git分支管理指南 摘要: 本文详细介绍了Git分支管理的核心概念和操作方法。主要内容包括:分支的创建、查看和切换;分支合并的两种模式(快进模式和非快进模式);合并冲突的解决方法;以及实际开发中的分支策略。重点讲解了如何通过分支实现多人协作开发,并保持master分支的稳定性。文章还演示了修复bug时另起分支的工作流程,帮助开发者掌握高效的分支管理技巧。通过图文并茂的方式,清晰地展现了Git分支的工作原理和操作过程。
2026-01-05 22:06:34
1081
原创 【Git版本控制】Git的基本操作(含git add/commit/reset/rm/checkout、git status/log/reflog、git仓库版本回退与对象库管理原理解析)
本文介绍了Git的基本概念与常用操作,重点讲解了工作区、版本库、暂存区的区别,以及文件添加、修改和版本回退的具体操作。主要内容包括:1)初始化仓库后需通过git add和commit才能管理文件;2)工作区与版本库的结构关系,暂存区作为中间过渡区域;3)使用git add添加文件到暂存区,git commit提交到分支;4)git diff查看文件修改差异;5)三种版本回退方式(--soft、--mixed、--hard)的区别及适用场景。文章通过具体命令示例和图示,帮助读者理解Git版本控制的核心机制。
2026-01-04 21:32:29
997
原创 【Vue专题】前端JS基础Part4(含Web存储LocalStorage与SessionStorage详解、解决回调地域的Promise+Asyn+Await)
本文介绍了Web存储的两种方式:sessionStorage(会话存储)和localStorage(本地存储)。sessionStorage仅在当前浏览器标签页有效,关闭后数据销毁,适用于临时数据存储;localStorage可持久保存数据,适用于用户偏好设置等场景。文章详细讲解了它们的添加、获取、删除等操作方法,并演示了存储对象和数组时的序列化与反序列化处理。最后通过一个倒计时示例引出异步操作的概念,为后续内容做铺垫。
2025-10-20 11:09:59
1073
原创 【Vue专题】前端JS基础Part3(含数组的重要方法map、filter、every、reduce、forEach与修改操作、对象的重要方法keys)
本文介绍了JavaScript数组的常用操作方法,主要包括增删操作(shift/unshift/pop/push)、查找方法(includes)、遍历方法(forEach)、过滤方法(filter)、映射方法(map)和判断方法(every)。通过代码示例和示意图详细展示了每种方法的用法和特点,如forEach回调函数参数的特性、filter的过滤功能、map生成新数组的能力等。这些方法能有效简化数组操作,提高代码可读性和开发效率。文章采用图文结合的方式,帮助读者直观理解数组操作的执行过程。
2025-10-18 10:01:39
716
原创 【Vue专题】前端JS基础Part2(含箭头函数、扩展运算符、序列化与反序列化)
本文介绍了JavaScript中箭头函数、扩展运算符以及序列化与反序列化的使用方法。箭头函数简化了函数定义,支持参数和返回值的简写;扩展运算符可用于解构赋值、数组拷贝和对象合并;JSON.stringify和JSON.parse实现序列化和反序列化,便于数据传输和格式统一。这些语法特性提高了代码的简洁性和可读性。
2025-10-16 10:39:11
364
原创 【Vue专题】前端JS基础Part1(含模版字符串、解构赋值、变量常量与对象)
本文介绍了JavaScript中变量、常量与对象的基本概念和使用方法。主要内容包括:1) 变量用let定义,可重新赋值;2) 常量用const定义,不可修改指向但可修改内容;3) 对象使用{}定义,可通过点号或中括号访问属性;4) 解构赋值可以简化数组和对象的取值操作,数组使用[]模式匹配,对象使用{}模式匹配。文章通过示例代码详细演示了各种语法特性,包括变量声明、对象定义、属性访问、简写语法以及解构赋值的多种应用场景。
2025-10-15 20:50:31
863
原创 【Git版本控制】Git初识、安装、仓库初始化与仓库配置(含git init、git config与配置无法取消问题)
文章摘要: 本文介绍了版本控制器的概念及其重要性,通过小明反复修改策划案的案例,说明版本控制器能有效管理文件历史版本。重点讲解了Git的安装(Linux/Windows平台)与配置,包括创建本地仓库(git init)、配置用户名邮箱(git config)等基础操作,并区分了全局与局部配置的差异。Git作为主流版本控制工具,可追踪文件变更,支持多人协作开发,为代码管理提供便利。
2025-10-14 22:09:33
1089
原创 【浅尝Java】类与对象第二弹之封装(含import与inclue的区别、静态导入包中方法、访问修饰限定符权限、static修饰成员变量及方法、静态成员成员变量初始化、封装的概念等)
本文介绍了Java面向对象编程中的封装概念和包的使用。封装是指将数据和操作方法有机结合,隐藏实现细节,仅对外提供接口。包用于组织类和管理命名空间,防止类名冲突。文章详细讲解了如何导入系统包中的类(如Scanner、Date等),比较了Java的import与C++的include区别,并演示了如何自定义包组织代码。最后通过IDEA操作示例展示了如何创建包结构,强调了包命名规范(建议使用公司域名倒置形式)和路径匹配原则。
2025-09-20 11:04:00
786
原创 【浅尝Java】类与对象第一弹之类的定义与初始化(含this引用的特性、this引用对象传递debug验证、三种初始化对象方式、面向对象的含义、类与实例的关系等)
本文介绍了面向对象编程的基本概念,重点讲解了Java中类的定义与实例化。主要内容包括: 面向对象概念:解释了面向对象编程思想,通过对象之间的交互完成任务,区别于面向过程的编程方式,并以炸薯条为例对比两种方法的差异。 类的定义:详细说明了如何用class关键字定义类,包含成员变量和成员方法,并通过洗衣机、狗、学生等示例展示了类的具体实现方式。 类的实例化:介绍了通过new关键字创建对象的过程,强调类相当于类型模板,而对象是具体的实例,占用实际内存空间。 this引用:简要提及this引用在解决成员变量命名冲突
2025-09-08 16:35:27
943
原创 【浅尝Java】数组的定义与使用(含JVM内存分布介绍、Arrays常见用法、冒泡排序算法、二分查找、基本数据类型与引用数据类型变量的区别、数组的应用场景与综合实践)
摘要: 本文介绍了Java数组的基本概念与使用方法。通过外卖兼职收入统计的案例,引出数组的必要性,详细讲解了数组的三大特点:同类型元素、连续存储空间和下标索引。文章演示了数组的动态初始化(new Type[N])和静态初始化({value1, value2...})两种创建方式,并通过代码示例展示了8种基本数据类型数组的默认初始值(如int为0,boolean为false等)。特别指出引用类型数组初始值为null,为后续编程中处理数组数据提供了基础指导。全文以实际应用场景切入,帮助读者快速掌握Java数组的
2025-09-04 14:38:29
861
原创 【浅尝Java】方法使用(含方法签名解析与javap反汇编的使用、实参与形参的关系、swap无法交换详细分析、方法调用过程分析、递归执行过程分析、方法重载详解)
本文介绍了Java中方法的概念和使用。方法是将代码模块化的手段,能够提高代码复用性、可读性和开发效率。文章通过旅行规划系统案例展示了如何将不同功能拆分到独立方法中,使代码结构更清晰。详细讲解了方法的定义语法,包括修饰符、返回值类型、方法名、参数列表和方法体等组成部分,并以判断闰年为例演示了方法的具体实现。最后指出方法是解决代码重复问题的有效方式,便于后续维护和修改。
2025-09-01 23:54:22
830
原创 【浅尝Java】程序逻辑控制汇总(含Random与Scanner解析、猜数字游戏代码完整实现解析、break与continue的区别、选择循环解析、switch支持的类型分析、Java输入输出详解)
摘要:Java程序逻辑结构与选择语句 本文介绍了Java中的程序逻辑结构,重点分析了顺序结构和选择结构。顺序结构按照代码书写顺序执行,改变代码顺序会导致不同输出结果。选择结构主要包括if语句系列:if、if-else和if-else if-else结构,通过布尔表达式控制程序分支。文章强调了两个注意事项:避免在if后误加分号导致语句失效,以及悬空else就近匹配问题。最后提供了三个实用示例(奇偶判断、正负零判断、闰年判断)来展示选择结构的实际应用。这些基础概念对Java初学者理解程序流程控制至关重要。
2025-08-31 15:54:02
1136
原创 【浅尝Java】运算符全介绍(含除法取模运算各情况分析、位运算与移位运算分析、逻辑与条件运算符)
Java运算符详解 本文介绍了Java中的各种运算符及其用法,主要包括算术运算符、关系运算符、逻辑运算符等。 算术运算符 四则运算符:+ - * / % 除法运算中,int/int结果为int,会向下取整 取模运算结果符号与左操作数一致 操作数为小数时,/0结果为Infinity,%0结果为NaN 增量运算符:+= -= *= /= %= 自动进行类型转换,相当于a=(type)(a+b) 自增/自减运算符:++ -- 分为前置(++a)和后置(a++)两种形式 前置先计算后使用,后置先使用后计算 关系运算
2025-08-30 10:43:17
899
原创 【浅尝Java】变量与数据类型(含隐式类型转换、强制类型转换、整型与字符串互相转换等)
字节是计算机中表示内存空间大小的基本单位。计算机使用二进制表示数据,规定8个二进制位为1个字节。
2025-05-04 22:41:19
996
原创 【浅尝Java】Java简介&&第一个Java程序(含JDK、JRE与JVM关系、javadoc的使用)
Java是一种优秀的程序设计语言,它具有令人赏心悦目的语法和易于理解的语义。不仅如此,Java还是一个有一系列计算机软件和规范形成的技术体系,这个技术体系提供了完整的用于软件开发和跨平台部署的支持环境,并广泛应用于嵌入式系统、移动终端、企业服务器、大型机等各种场合。
2025-05-01 21:40:14
1925
原创 【Hot100算法刷题集】双指针-02-盛水最多的容器(含暴力枚举、双指针法及其合理性证明)
🏠关于专栏:专栏用于记录LeetCode中Hot100专题的所有题目🎯每日努力一点点,技术变化看得见。
2024-09-11 10:53:46
1371
1
原创 【Hot100算法刷题集】双指针-01-移动零(含置零思路、移动思路、偏移量思路、冒泡法)
🏠关于专栏:专栏用于记录LeetCode中Hot100专题的所有题目🎯每日努力一点点,技术变化看得见。
2024-09-10 14:31:47
1340
原创 【Hot100算法刷题集】哈希-03-最长连续序列(含排序、哈希、并查集法&&未正确使用哈希表导致算法效率降低的分析)
🏠关于专栏:专栏用于记录LeetCode中Hot100专题的所有题目🎯每日努力一点点,技术变化看得见。
2024-09-10 10:45:02
1483
原创 【Hot100算法刷题集】哈希-02-字母异位词分组(含排序构造键、自定义键、自定义哈希函数法)
从题目的提示可知,每个字母最多出现10000次,如果使用数字字符表示,需要5个;而26个字母,每个用5个数字字符表示,即需要26×526×526×5,即130个字符表示,由这个字符串作为哈希表的键(key)。string tmp;return ret;return ret;在介绍该方法前,先对一些C++中的操作进行介绍并给出相关示例。首先介绍std::hash。
2024-09-06 15:31:00
1068
原创 【Hot100算法刷题集】哈希-01-两数之和(暴力枚举再优化,也不是哈希表的对手)
🏠关于专栏:专栏用于记录LeetCode中Hot100专题的所有题目🎯每日努力一点点,技术变化看得见。
2024-09-05 10:36:54
969
1
原创 【半夜学习MySQL】表的内连接与外连接(含左外连接、右外连接详谈)
🏠关于专栏:半夜学习MySQL专栏用于记录MySQL数据相关内容。🎯每天努力一点点,技术变化看得见。
2024-05-15 23:38:17
599
原创 【半夜学习MySQL】复合查询(含多表查询、自连接、单行/多行子查询、多列子查询、合并查询等详解)
🏠关于专栏:半夜学习MySQL专栏用于记录MySQL数据相关内容。🎯每天努力一点点,技术变化看得见。
2024-05-15 20:22:32
1130
原创 【半夜学习MySQL】内置函数(含日期、字符串、数学等函数常用用法介绍及示例详解)
🏠关于专栏:半夜学习MySQL专栏用于记录MySQL数据相关内容。🎯每天努力一点点,技术变化看得见。
2024-05-15 16:38:17
2028
原创 【半夜学习MySQL】表的增删改查操作[下篇](含update、delete、truncate、插入查询结果、聚合函数、group by与having子句详谈)
🏠关于专栏:半夜学习MySQL专栏用于记录MySQL数据相关内容。🎯每天努力一点点,技术变化看得见。
2024-05-15 13:53:50
1181
原创 【半夜学习MySQL】表的增删改查操作[上篇](含单行与多行数据插入、全列与指定列插入、select中的where子句与order by子句、limit用法详谈)
我们平时常说的数据库表的CURD指的就是:Create(创建)、Retrieve(读取)、Update(更新)、Delete(删除)。对于上述四种操作,将分为两篇文章介绍,本文将先行介绍Create(创建)和Retrieve(读取)操作。
2024-05-13 19:46:33
750
原创 【半夜学习MySQL】表的约束(含主键、唯一键、外键、zerofill、列描述、默认值、空属性详解)
上一篇文章中介绍了数据类型,数据类型已经对字段做出一定的约束。但是数据类型的约束很单一,需要一些额外的约束,更好的保证数据的合法性,让我们未来插入数据库表中的数据是复合预期的,保证数据在业务逻辑角度的正确性。本文将介绍表的其他约束,如null/not null、default、comment、zerofill、primary key、auto_increment、unique key等约束本质是通过技术手段,倒逼程序员,插入正确的数据,反过来,站在mysql的视角,凡是插入进来的数据,都是符合数据约束的。
2024-05-12 23:08:08
1530
原创 【半夜学习MySQL】数据库中的数据类型(含数值类型、文本二进制类型、时间类型、String类型详谈)
🏠关于专栏:半夜学习MySQL专栏用于记录MySQL数据相关内容。🎯每天努力一点点,技术变化看得见。
2024-05-11 13:01:43
1039
原创 【半夜学习MySQL】表结构的操作(含表的创建、修改、删除操作,及如何查看表结构)
🏠关于专栏:半夜学习MySQL专栏用于记录MySQL数据相关内容。🎯每天努力一点点,技术变化看得见。
2024-05-10 18:37:14
1270
原创 【半夜学习MySQL】库的操作(含库的创建、删除、修改、备份操作/查看mysql连接情况/字符集和校验规则详谈)
🏠关于专栏:半夜学习MySQL专栏用于记录MySQL数据相关内容。🎯每天努力一点点,技术变化看得见。
2024-05-10 11:57:08
1296
原创 【半夜学习MySQL】数据库概念详解&&探索数据库到底是如何存储的?
在计算机中,文件就足以存储数据了,为什么还要使用文件呢?由于文件有如下缺点,故需要使用数据库存储数据:●文件没有提供安全机制,数据安全没有保障;●文件查找数据时需要逐一遍历,效率过低,不利于数据的查询;且文件需要用户自定义数据存储格式等,不利于数据管理;●文件存在数据上限,不利于存储海量数据;●文件在程序中控制不方便;例如:C语言中需要打开关闭文件,移动文件读写指针等,操作十分繁琐。为了解决上述问题,用于管理数据的数据库就应运而生了,它能更有效地管理数据。磁盘内存。
2024-05-09 20:59:02
1166
原创 【从浅学到熟知Linux】线程概念与线程控制(含线程优缺点、pthread_create/pthread_exit/pthread_join等pthread线程库函数使用详解)
首先我们一起回顾一下之前学习的进程:在之前学习的单进程程序中,整个进程执行过程中只有一个执行流。【例子】单执行流之打开记事本当我们打开记事本时,进程执行IO操作,从磁盘将对应文件加载到内存,再将数据显式到显示器中,这整个过程只需要一个执行流就够了。【例子】迅雷实现边下载边播放一个程序启动时会创建一个进程,如果既要下载又要播放视频的话,一个执行流就显得力不从心了。也许你会想到,可以创建一个子进程,一个进程进行下载,一个进程执行播放视频的操作不就可以了吗?
2024-05-02 22:44:15
1384
原创 【从浅学到熟知Linux】信号机制下篇=>信号集操作函数,信号捕捉,可重入函数、volatile关键字(含sigprocmask/sigpending、sigaction等详谈)
🏠关于专栏:Linux的浅学到熟知专栏用于记录Linux系统编程、网络编程等内容。🎯每天努力一点点,技术变化看得见。
2024-05-01 21:34:22
1264
1
原创 【从浅学到熟知Linux】信号机制上篇=>信号的概念与产生方式(含signal/raise/abort函数使用示例、core dump核心转储、软件与硬件异常信号详解)
🏠关于专栏:Linux的浅学到熟知专栏用于记录Linux系统编程、网络编程等内容。🎯每天努力一点点,技术变化看得见。
2024-04-28 22:11:14
1025
原创 【从浅学到熟知Linux】进程间通信之消息队列(含消息队列的特点,msgget/msgsnd/msgrcv/msgtrl接口使用详解、消息队列实现Client&Server)
🏠关于专栏:Linux的浅学到熟知专栏用于记录Linux系统编程、网络编程等内容。🎯每天努力一点点,技术变化看得见。
2024-04-26 20:21:08
6588
1
原创 【从浅学到熟知Linux】进程间通信之共享内存(含共享内存挂接原理、ftok/shmget/shmat/shmdt/shmctl详解、共享内存实现Client&Server)
🏠关于专栏:Linux的浅学到熟知专栏用于记录Linux系统编程、网络编程等内容。🎯每天努力一点点,技术变化看得见。
2024-04-24 21:14:21
1936
1
原创 【从浅学到熟知Linux】进程间通信之命名管道(含mkfifo命令及函数调用示例、读写阻塞及ONOBLOCK详解、匿名与命名管道区别、命名管道实现Client&Server)
🏠关于专栏:Linux的浅学到熟知专栏用于记录Linux系统编程、网络编程等内容。🎯每天努力一点点,技术变化看得见。
2024-04-23 20:59:56
1225
原创 【从浅学到熟知Linux】进程间通信之匿名管道方式(进程间通信方式汇总、匿名管道的创建、匿名管道实现进程池详解)
什么是通信?所谓通信,就是要实现两个或多个进程实现数据层面的交互。而在操作系统中,为了保持进程的独立性,不允许其他进程访问某个进程的地址空间。正因为进程独立性的存在,导致进程的通信成本比较高。(因为A进程无法直接将通信数据写入B进程的地址空间中,而需要通过在两进程外部创建某个空间来实现进程的通信,故成本较高)。为什么进程需要通信呢?①数据传输:一个进程需要将它的数据发送给另一个进程;②资源共享:多个进程之间共享同样的数据,当前进程需要将共享数据发送给需要该数据的进程;
2024-04-22 22:23:06
1122
原创 【从浅学到熟知Linux】基础IO第四弹=>动静态库(含第三方动静态的使用、自制动静态库、关于动静态库加载调用原理)
在Linux系统中,静态库以.a后缀结尾。我们可以进入/lib64目录下,使用查找当前目录下的静态库。↓↓↓静态库的名称需要去掉前面的lib及后缀.a。如下图所示,该静态库的名称为util↓↓↓程序在编译链接的时候把静态库库的代码链接到可执行文件中,程序运行的时候不再需要静态库。例如,我们需要使用libutil.a中的代码,在编译链接的时候,就将该库中的代码拷贝到待生成程序的代码中。
2024-04-21 22:46:41
1270
原创 【从浅学到熟知Linux】基础IO第三弹=>文件系统介绍、软链接与硬链接(含磁盘结构、文件系统存储原理、软硬链接的创建、原理及应用详解)
🏠关于专栏:Linux的浅学到熟知专栏用于记录Linux系统编程、网络编程等内容。🎯每天努力一点点,技术变化看得见。
2024-04-20 23:14:38
2244
原创 【从浅学到熟知Linux】基础IO第二弹=>输入输出重定向及其原理、用户级缓冲区、如何理解一切皆文件(含dup2系统调用详解)
🏠关于专栏:Linux的浅学到熟知专栏用于记录Linux系统编程、网络编程等内容。🎯每天努力一点点,技术变化看得见。
2024-04-18 21:21:21
1096
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅