- 博客(16)
- 收藏
- 关注
原创 MySQL核心知识点整合(数据库操作+数据引擎+B+树索引+数据类型)
本文整合了MySQL四大核心知识点,覆盖开发和面试的核心需求:基础操作:库表管理 + 数据CRUD,是日常开发的必备技能,重点注意操作规范(如删除、更新加WHERE)。数据引擎:InnoDB是主流,需掌握其与MyISAM的核心区别,结合业务场景选择。B+树索引:查询优化的核心,理解其结构和原理,能有效避免慢查询,掌握索引创建技巧。数据类型:合理选择能减少存储空间、提升性能,避免因类型选择不当导致的问题(如精度丢失、空间浪费)。
2026-03-27 22:46:24
486
原创 Java IO 流全解:从基础到实战,一篇吃透 IO 核心知识
IO(Input/Output)流是 Java 开发的核心基础,也是面试高频考点,无论是文件读写、网络通信,还是数据序列化,都离不开 IO 流的支撑。本文将从 IO 流的分类、核心 API、字节流 / 字符流、对象流、NIO 等维度,全面详细讲解 Java IO 流的知识体系,搭配实战代码示例,帮你彻底掌握 IO 流的核心逻辑与应用场景。IO 流是 Java 中用于数据传输的抽象概念,本质是数据的流动通道输入流:从外部设备(文件、网络、键盘等)读取数据到程序内存中;输出流。
2026-03-22 21:19:13
528
原创 从入门到实战:Java 函数式编程与高级工具类全解析
本文系统介绍了Java8函数式编程的核心内容。首先讲解了函数式接口的定义和四大核心接口(Supplier、Consumer、Function、Predicate)的用法及典型场景。然后通过代码示例展示了Comparator接口实现灵活排序和Arrays工具类的数组操作方法。最后介绍了反射动态创建对象的实现原理。文章强调掌握这些函数式编程特性对于编写优雅高效的现代Java代码的重要性,是理解StreamAPI和框架底层的基础。
2026-03-15 00:25:55
360
原创 Java 反射从入门到实战(附面试八股 + 企业级案例)
Java 反射(Reflection)是指在程序运行时,动态获取类的完整结构信息(构造器、方法、字段、注解等),并能调用这些成员的机制。正常编码:编译期就固定类名、方法名,如反射编码:运行时才确定要操作的类和方法,如反射让代码在运行时 “照镜子”,看清自身结构并动态操作,是框架底层的核心基石。入门:掌握 3 种获取Class的方式,理解反射核心概念进阶:熟练使用FieldMethod操作类成员实战:实现通用对象赋值工具,理解框架底层反射逻辑深入。
2026-03-13 23:27:03
469
原创 二叉树面试通关指南:全量核心知识点 + 中低难度力扣题解(Java 版)
力扣、牛客等平台的二叉树节点定义完全固定,Java 版本是面试手写首选,必须熟记:java运行// Java版本(面试最常用,优先掌握,必记)int val;// 三种构造方法,面试手写可只写前两种(简洁且满足90%场景)面试注意:手写时无需写注释,但构造方法要完整,避免面试官认为你不熟悉基础定义。核心基础:熟记 TreeNode 定义、4 种遍历的递归 + 迭代模板,层序遍历是 BFS 的核心,标记法可统一实现前 / 中 / 后序迭代;高频题型。
2026-03-04 17:00:24
364
原创 哈希表从入门到实战:原理剖析 + 踩坑指南 + LeetCode 中低难度真题 Java 实现
哈希表(Hash Table)是开发和面试中高频核心数据结构,其核心优势是能实现平均 O (1) 时间复杂度的增、删、查操作,在数据查找、去重、计数等场景中应用广泛。本文将从哈希表基础原理出发,解析 Java 中哈希表的核心实现,重点标注实际开发中的踩坑点,并结合 LeetCode 中低难度经典真题,提供可直接运行的 Java 解题代码和思路分析,帮助大家彻底掌握哈希表的使用。哈希表是一种通过哈希函数将键(Key)映射到数组指定下标(哈希地址),从而实现快速存取的数据结构。其核心思想是空间换时间。
2026-02-27 11:22:04
887
原创 【数据结构入门】一文吃透队列:概念、实现与实战应用(Java 版)
先来先服务。对应数据结构中,队列(Queue)是遵循先进先出(FIFO, First In First Out)数据只能从队尾(Rear)入队(add/offer);数据只能从队首(Front)出队(remove/poll);不允许在队列中间插入 / 删除元素。队列核心特性是先进先出(FIFO),Java 中优先使用等非阻塞方法避免异常;基础顺序队列存在 “假溢出” 问题,循环队列通过指针取模实现空间复用,入队 / 出队效率更高;实战中优先使用 Java 内置队列:单线程用。
2026-02-25 20:32:07
833
原创 Java 枚举 (Enum) 深度解析:从基础用法到核心方法(附订单状态实战案例)
枚举是 Java 中一种特殊的引用类型,用于定义一组固定的常量集合。每个枚举项都是该枚举类的实例,默认被修饰,且枚举类默认继承自(不可手动继承其他类,但可实现接口)。使用javap命令对编译后的枚举类字节码进行反汇编,可知,每个枚举项都被 public static final 修饰java运行/*** 订单状态枚举类:封装所有订单状态及描述*/// 枚举项(必须放在第一行):每个项都是枚举类的实例PAYMENT_PENDING("待支付"),PROCESSING("处理中"),
2026-02-13 21:45:01
692
原创 数据结构详解之栈(含Java实现+力扣低/中难度刷题实战)
本文系统介绍了栈(Stack)这一基础数据结构。首先阐述了栈的核心特性"后进先出"(LIFO),列举了函数调用、表达式求值等典型应用场景。接着详细讲解了数组和链表两种实现方式,并提供了Java代码示例。文章重点通过4道力扣题目(2低+2中难度)进行实战演练:包括有效的括号、用队列实现栈、逆波兰表达式求值和每日温度问题,每道题都给出了解题思路、完整代码和详细解析。最后总结了栈的核心知识点,并给出进阶学习建议,帮助读者掌握栈的基本概念和应用技巧。
2026-02-12 20:59:35
1041
原创 深入理解 Java 中 static 关键字的用法与场景
在 Java 开发中,static是一个高频使用且非常重要的关键字,无论是日常编码、面试还是源码阅读,都离不开对 static 的理解。它可以用来修饰类的成员变量、成员方法、代码块以及内部类,核心作用是将类的成员与对象实例解绑,让其属于类本身。本文将从 static 的核心概念、四种使用场景、内存机制、使用注意事项以及面试高频考点,全方位带你吃透 Java static 关键字,新手也能轻松掌握。static 修饰的成员属于类还是对象?答:属于类,不依赖对象。静态方法能不能访问非静态成员?为什么?
2026-02-12 11:54:33
737
原创 Java 数组与链表核心解析 + 中低难度力扣真题精讲(附完整代码)
数组与链表是数据结构的基础核心,也是算法刷题的入门必备,二者作为线性表的两种核心实现,因底层存储结构不同,拥有完全互补的特性,在力扣中低难度真题中属于高频考点(占比超 30%)。本文将从核心概念、底层特性、常用操作三方面深度解析数组与链表,同时精选力扣中低难度经典真题,结合 Java 语言给出详细解题思路 + 完整可运行代码 + 代码逐行解析,兼顾基础巩固与刷题实战,适合入门开发者和算法刷题新手。特性数组单链表底层存储连续内存空间非连续内存空间随机访问支持(O (1))不支持(O (n))
2026-02-10 21:17:00
1016
原创 字符串核心(基础操作 + 回文)
字符串是编程中最常用的数据类型之一,而反转、子串截取、字符计数、回文判断是字符串的核心基础操作,也是面试高频考点。本文将用 3 小时精准拆解这些知识点,结合 3 道 LeetCode 经典题目(Easy+Easy+Medium),从理论到实战帮你彻底掌握,适合入门进阶和面试复盘。字符串基础操作:反转(双指针最优)、子串截取(注意左闭右开)、字符计数(数组 / 哈希表);回文问题:预处理(过滤 + 大小写)+ 双指针验证,回文子串用中心扩展法(覆盖奇偶情况)。
2026-01-31 23:19:56
903
原创 Java 刷题必备|字符串 & 字符操作高频用法总结(附回文串实战)
刷 Java 算法题时,字符串和字符处理是高频考点,尤其是回文串判断、双指针遍历、有效字符筛选这类题目,总会遇到这类写法。很多编程初学者会对这些基础操作感到困惑,其实这类写法都是字符串基础方法 + Character 工具类的经典组合,掌握核心用法后能解决 90% 以上的字符处理类算法题。本文将从基础用法工具类速查高频组合真题实战本文整理的是 Java 刷题中字符串和字符处理的核心基础用法。
2026-01-30 20:15:39
927
原创 一文吃透滑动窗口算法:从原理到实战(附高频例题)
*明确窗口约束条件**:先想清楚“窗口满足什么条件时需要调整左指针”,是和、字符计数、是否包含目标元素等。**选择合适的数据结构**:用哈希表/数组记录窗口内信息(如字符计数、元素和),保证操作高效(数组比哈希表更快,适合字符集固定的场景)。**边界处理**:注意数组/字符串越界,以及窗口大小为 0 或等于序列长度的极端情况。**最优解更新时机**:可变窗口中,满足约束条件时再更新最优解(最长窗口在扩大时更新,最短窗口在缩小时更新)。
2026-01-30 19:41:13
905
原创 【超详细】双指针算法 核心知识点全解析(含多场景代码实现 + 生活应用)
双指针(Two Pointers)是编程中最经典、最高效的算法技巧之一,其核心是通过两个「指针(索引 / 引用)」遍历数据结构,根据条件动态调整指针位置,从而将嵌套循环的 O(n2) 时间复杂度优化为线性的 O(n)。与二分查找(聚焦「折半缩小范围」)不同,双指针更侧重「线性遍历 + 指针协作」,广泛应用于数组、链表、字符串等线性数据结构的问题求解。本文将从核心概念、分类及原理、多场景代码实现、面试题实战、生活场景应用等维度,帮你彻底掌握双指针的精髓,解决新手最头疼的「指针移动逻辑」「边界处理」等问题。
2026-01-25 22:17:50
1103
原创 关于封装,继承,多态,匿名内部类的学习
接口( interface ):仅定义抽象方法(Java 8+支持默认方法),无属性(常量除外),适合“纯规范”场景,支持多实现(一个类可实现多个接口);匿名内部类是Java中没有显式类名的内部类,本质是“继承了某个类/实现了某个接口的子类对象”,核心作用是简化代码,避免为仅使用一次的类单独定义文件。- 抽象类( abstract class ):包含抽象方法(无实现)和普通方法(有实现),强制子类重写抽象方法,适合“部分复用+部分规范”场景;可以更直观看到它在项目中的落地方式。
2026-01-19 11:29:42
981
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅