JavaSE
文章平均质量分 95
Java 学习之旅开始啦!!!
吞吞吐吐大魔王
这个作者很懒,什么都没留下…
展开
-
【Java 基础语法】Java 的文件操作
Java 中通过类来对一个文件(包括目录)进行抽象的描述。不过有 File 对象,并不代表对应的文件真实存在。原创 2022-09-03 03:05:48 · 1882 阅读 · 1 评论 -
【操作系统】进程的简单介绍
文章目录1. 进程介绍1.1 进程的概念1.2 进程和程序的关系1.3 进程的特点2. 进程控制块 PCB3. 进程的状态3.1 进程的生命周期3.2 进程的状态4. 进程间通信的机制1. 进程介绍1.1 进程的概念程序是由指令和数据组成的,但这些指令要运行,数据要读写,就必须将指令加载至 CPU,将数据加载至内存。在指令运行过程中还需要用到磁盘和网络等设备。进程就是用来加载指令、管理内存、管理 IO 的。当一个程序被运行,会从磁盘加载这个程序代码至内存,这时就开启了一个进程。一个运行原创 2022-05-18 17:02:00 · 377 阅读 · 2 评论 -
【Java 基础语法】详解 Java 的 Lambda 表达式
文章目录1. 介绍2. Lambda 表达式的语法3. 函数接口4. Lamdba 表达式的使用5. 变量捕获5.1 介绍5.2 匿名内部类的变量捕获5.3 Lambda 的变量捕获6. Lambda 在集合中的使用6.1 Collection 接口6.2 List 接口6.3 Map 接口7. Lambda 表达式的优点和缺点1. 介绍Lambda 表达式是 JavaSE8 中的一个重要的新特性Lambda 表达式允许你通过表达式来代替功能接口Lambda 表达式和方法一样,它提供了一个正常的参原创 2021-12-21 03:45:00 · 2034 阅读 · 31 评论 -
【Java 基础语法】详解 Java 的枚举
文章目录1. 定义2. 使用2.1 枚举类型可以用在 switch 语句2.2 枚举类的常用内部方法2.3 自定义枚举的构造方法2.4 包含抽象方法的枚举类3. 枚举类不能通过反射获取实例(面试题)4. 枚举的优点和缺点1. 定义Java 的枚举是一个特殊的类,一般表示一组常量,比如一年的4季、一年的12个月份,一星期的7天,方向有东南西北等等。类似这种当一个变量有几种固定可能的取值时,就可以将它定义为枚举类型定义形式:修饰符 enum 枚举名:基础类型 { 枚举成员,}任意两个枚原创 2021-12-19 10:45:00 · 1228 阅读 · 31 评论 -
【Java 基础语法】详解 Java 的反射
文章目录1. 定义2. 为什么要有反射2. 用途3. 反射相关的类3.1 总览图3.2 Class 类相关的方法3.3 Filed 类相关的方法3.4 Method 类相关的方法3.5 Constructor 类相关的方法4. 获取 Class 对象4.1 Class 类(反射机制的起源)4.2 获取 Class 对象三种方式5. 反射的使用6. 反射的优点和缺点1. 定义Java 的反射(Reflection)机制是在运行状态中,对任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够原创 2021-12-18 16:42:47 · 2701 阅读 · 41 评论 -
【Java 集合框架】帮你搞通哈希表,掌握 Map 和 Set 的使用(内含哈希表源码解读及面试常考题)
文章目录1. 搜索1.1 场景引入1.2 模型2. Map2.1 关于 Map 的介绍2.2 关于 Map.Entry1. 搜索1.1 场景引入在学习编程时,我们常见的搜索方式有:直接遍历:时间复杂度为 O(N),元素如果比较多效率会非常慢二分查找:时间复杂度为 O(logN),搜索前必须要求序列有序但是上述排序比较适合静态类型的查找,即一般不会对区间进行插入和删除操作。而现实中的查找如:根据姓名查询考试成绩通讯录(根据姓名查询联系方式)可能在查找时需要进行一些插入和删除操作原创 2021-12-15 10:15:00 · 1787 阅读 · 39 评论 -
【MySQL 数据库】JDBC 编程之 Java 连接 MySQL
文章目录1. 数据库编程的基础条件2. Java 的数据库编程:JDBC3. JDBC 访问数据库的层次结构4. MySQL 数据库操作介绍5. MySQL 驱动包的下载及添加到项目6. JDBC 使用步骤6.1 创建数据库源,连接 Connection6.2 构造 SQL 语句,为执行的操作做准备6.3 执行 SQL,并处理结果集6.4 释放资源6.5 JDBC 编程模板7. JDBC 常用接口和类7.1 DataSource 和 MysqlDataSource7.2 Connection7.3 Prep原创 2021-12-04 16:34:17 · 4337 阅读 · 70 评论 -
【Java 基础语法】详解 Java 中的泛型
前言:泛型的知识其实在前面 Java 的泛型和包装类 这章介绍过了一些,但那些知识是为后面介绍 Java 集合框架做的铺垫,而今天这章再配合之前那章,将会完整的介绍 Java 中的泛型!文章目录1. 前章回顾1.1 泛型类的代码示例1.2 泛型类的意义1.3 泛型是如何编译的2. 泛型类的定义2.1 语法2.2 示例3. 内部类3.1 概念3.2 实例内部类3.3 静态内部类3.4 匿名内部类4. 泛型类的使用4.1 语法4.2 示例4.3 类型推导(Type Inference)5. 裸类型(Ra原创 2021-11-11 12:37:52 · 3088 阅读 · 32 评论 -
【Java 集合框架】PriorityQueue 优先级队列的使用
文章目录1. 场景引入2. PriorityQueue 介绍3. 知识点4. 常用方法5. 优先级队列插入元素的细节问题6. PriorityQueue 大根堆的创建方式6.1 思路6.2 代码实现6.3 使用匿名内部类1. 场景引入我们知道,Queue是一个先进先出(FIFO)的队列。在很多应用中,我们通常需要按照优先情况对待处理对象进行处理,比如首先处理优先级最高的对象,然后处理次高的对象。最简单的一个例子就是,在手机上玩游戏时,如果有来电,那么系统应该优先处理进来的电话。这个时候,我们发现,要原创 2021-11-08 16:22:25 · 1827 阅读 · 21 评论 -
【Java 基础语法】Java 对象的比较
文章目录1. 引入2. 方法一:覆写基类的 equals2.1 介绍2.2 覆写 equals 方法的规则2.3 实现代码2.4 局限性3. 方法二:基于 Comparable 接口的比较3.1 介绍3.2 使用方法3.3 实现代码3.4 局限性4. 方法三:基于 Comparator 接口,自定义比较器的比较4.1 介绍4.2 使用方法4.3 实现代码5. 三种方式对比1. 引入基本类型可以直接比较大小,但是我们自定义的类类型可能就无法比较,如果自定义类的类型本身有多个属性的话,那么是以什么样的方式去原创 2021-11-05 17:25:40 · 735 阅读 · 43 评论 -
【Java 集合框架】Stack、Queue 和 Deque 的使用
文章目录1. Stack1.1 介绍1.2 常见方法2. Queue2.1 介绍2.2 常见方法3. Deque3.1 介绍3.2 常见方法1. Stack1.1 介绍Stack 栈是 Vector 的一个子类,它实现了一个标准的后进先出的栈。它的底层是一个数组。堆栈只定义了默认构造函数,用来创建一个空栈。堆栈除了包括由 Vector 定义的所有方法,也定义了自己的一些方法。1.2 常见方法方法描述E push(E item)压栈E pop()出栈E peek原创 2021-10-22 04:12:46 · 1299 阅读 · 40 评论 -
【Java 集合框架】List、ArrayList 和 LinkedList 的使用
文章目录1. List1.1 List 的常见方法1.2 代码示例2. ArrayList2.1 介绍2.2 ArrayList 的构造方法2.3 ArrayList 底层数组的大小3. LinkedList3.1 介绍3.2 LinkedList 的构造方法4. 练习题5. 扑克牌小游戏1. List1.1 List 的常见方法方法描述boolean add(E e)尾插 evoid add(int index, E element)将 e 插入到 index 位置原创 2021-10-19 11:16:21 · 2336 阅读 · 52 评论 -
【Java 基础语法】Java 的泛型和包装类
前言: 本章主要是为了后面学习集合框架所做的知识补充。补充了泛型以及包装类两个知识,但是该章泛型的讲解不够全面,主要是为了集合框架学习做铺垫。文章目录1. 预备知识-泛型(Generic)1.1 泛型的引入1.2 泛型的分类1.3 泛型类的定义1.4 泛型编译的机制2. 预备知识-包装类(Wrapper Class)2.1 基本数据类型和包装类的对应关系2.2 包装类介绍2.3 装箱(boxing)和拆箱(unboxing)2.4 自动装箱(autoboxing)和自动拆箱(autounboxing)2.原创 2021-10-18 00:40:01 · 1285 阅读 · 42 评论 -
【Java 集合框架】最全的 Java 集合框架入门手册
前言: 本文主要介绍了 Java 集合框架,让大家对它有个概念的认识。为后面介绍数据结构以及集合框架中具体的实现类来做铺垫。希望大家喜欢!文章目录1. 介绍(含集合框架图)2. 各个接口概述3. 各个实现类概述4. Iterable4.1 介绍4.2 Iterator 和 ListIterator 迭代器4.3 迭代器的简单用法5. Collection5.1 介绍5.2 Collection 接口说明5.3 Collection 常用方法说明5.4 Collection 示例5.4.1 使用 Colle原创 2021-10-14 01:29:42 · 1856 阅读 · 77 评论 -
【Java 基础语法】学会异常处理,祝你国庆快乐
前言:前些章节的知识点有时会涉及到异常的知识,如果没有专门学习过异常的小伙伴可能看的有点疑惑。今天这节就是为了讲解异常,让我们来了解什么是异常,它的作用是啥,怎么使用异常。文章目录1. 异常的背景1.1 邂逅异常1.2 异常和错误1.3 Java 异常的体系(含体系图)1.4 异常的核心思想1.5 异常的好处2. 异常的基本用法2.1 捕获异常2.1.1 基本语法2.1.2 示例一2.1.3 示例二(含使用调用栈)2.1.4 示例三(可以使用多个 catch 捕获不同的异常)2.1.5 示例四(可以使用原创 2021-10-05 04:44:12 · 1532 阅读 · 66 评论 -
【Java 基础语法】万字解析 Java 的 String 类
前言:在 C 语言中并没有字符串类型,而 Java 中却有着 String。之前就介绍过 Java 的数据类型,但是 String 类型还有着很多的知识没有介绍到。今天这节就是深度解析一下 Java 中的字符串类型,让我们更加了解它,更容易玩转字符串。文章目录1. 创建字符串2. 字符串常量池3. 字符串比较相等(包含 equals、intern)3.1 情况一(含 equals):3.2 情况二:3.3 情况三:3.4 情况四:3.5 情况五:3.6 情况六(含 intern 讲解):3.7 情况七:原创 2021-09-30 01:20:09 · 1888 阅读 · 82 评论 -
【Java 基础语法】纯 Java《图书管理系统》练习
前言:之前介绍了很多 Java 语法的基础知识,但此时我感觉到有些知识学了但还是没学透。所以自己写了个图书管理系统,并且写下这篇文章,让自己对于 Java 语法的理解的更加透彻!文章目录1. 构思2. 整体框架3. 解析各包代码2.1 书(book 包)2.2.1 单独的书(Book 类)2.2.2 书架(BookList)2.2 对于书架的操作(operation 包)2.2.1 操作接口2.2.2 新增书籍2.2.3 删除书籍2.2.4 查找书籍2.2.5 借阅书籍2.2.6 归还书籍2.2.7原创 2021-09-26 02:01:30 · 1372 阅读 · 72 评论 -
【Java 基础语法】万字解析 Java 的多态、抽象类和接口
文章目录一、多态1. 向上转型2. 动态绑定3. 方法重写4. 向下转型5. 关键字 super6. 在构造方法中调用重写方法(坑)7. 理解多态8. 小结二、抽象类1. 概念2. 注意事项3. 抽象类的意义3. 抽象类的作用三、接口1. 语法规则2. 实现多个接口3. 接口的继承4. Comparable 接口4. Comparator 接口5. Cloneable 接口和深拷贝四、总结上节介绍了 Java 的包和继承,如果这类知识有点疑惑的兄弟,可以去 万字解析 Java 的包和继承 这章看看,或许可原创 2021-09-20 04:40:15 · 2912 阅读 · 89 评论 -
【Java 基础语法】万字解析 Java 的包和继承
文章目录一、包1. 概念2. 使用方式3. 静态导入4. 创建包5. 包的访问权限6. 常见的系统包二、继承1. 概念2. 语法规则(含 super 使用)3. protected 关键字4. 更复杂的继承关系5. final 关键字三、组合四、总结(含谜底)一、包1. 概念根据定义:包是组织类的一种方式那么为什么要组织类呢?简单来讲就是保证类的唯一性,就比如在以后的工作中,如果大家一起开发一个项目,大家可能在自己的代码中都写到了一个 Test 类,而如果出现了两个同名的类的话,就会冲突,导致代原创 2021-09-11 23:26:05 · 5760 阅读 · 119 评论 -
【Java 基础语法】爆肝1W字只为弄懂类和对象
文章目录一、类与对象的初步认知二、类和类的实例化三、类的成员1. 字段/属性/成员变量2. 方法3. static 关键字4. 总结四、封装1. private 实现封装2. getter 和 setter 方法五、构造方法1. 基本语法2. this 关键字六、认识代码块1. 什么是代码块2. 本地代码块3. 实例代码块4. 静态代码块七、补充说明1. toString 方法2. 匿名对象八、总结其实在学习 C 语言时就一直听到 C 语言是面向过程的,而 Java 是面向对象的这句话。并且我们之前的学习原创 2021-08-24 07:27:54 · 3860 阅读 · 116 评论 -
【Java 基础语法】深度剖析 Java 中的数组(2)含数组练习
文章目录一、二维数组1. 创建数组2. 存储形式3. 使用方式二、剖析 String[] args三、数组练习1. 数组转字符串2. 数组拷贝(4种)3. 找数组中的最大元素4. 求数组中元素的平均值5. 查找数组中指定元素(顺序查找)6. 查找数组中指定元素(二分查找)7. 检查数组的有序性8. 数组排序(冒泡排序)9. 数组逆序10. 数组数字排序四、总结一、二维数组和 C 语言一样,Java 中,二维数组本质上也就是一维数组,只不过每个元素又是一个一维数组1. 创建数组通过类比一维数组创建的方原创 2021-08-21 07:40:47 · 1908 阅读 · 61 评论 -
【Java 基础语法】深度剖析 Java 中的数组(1)
文章目录一、数组基本用法1. 什么是数组2. 创建数组3. 数组的使用二、数组作为方法的参数1. 认识 JVM 内存区域划分2. 数组传参以及被调用的过程3. 理解引用类型4. 认识 null三、数组作为方法的返回值四、总结一、数组基本用法1. 什么是数组和 C 语言一样,Java 中的数组是一块连续的内存,里面可以存放相同类型的变量。它可以在我们要创建若干相同类型变量时,实行批量创建。但是 Java 中的数组与 C 语言还是有蛮多不同的地方,接下来让我们先了解数组的创建!2. 创建数组在 Ja原创 2021-08-19 06:30:48 · 2041 阅读 · 80 评论 -
【Java 基础语法】方法的使用
文章目录一、方法的基本用法1. 什么是方法2. 语法格式3. 实参和形参的关系二、方法的重载1. 重载要解决的问题2. 什么是重载三、方法递归1. 什么是递归2. 递归执行过程分析3. 递归练习4. 递归小结四、总结一、方法的基本用法1. 什么是方法方法就是一个代码片段,类似于 C 语言中的函数。它是一个语句的集合,它们在一起执行一个功能那么方法存在的意义是什么呢?能够模块化的组织代码做到让代码被重复使用,一份代码可以用在多个位置让代码更好理解、更简单直接调用现有方法,不必重复造轮子原创 2021-08-17 03:56:34 · 2322 阅读 · 50 评论 -
【Java 基础语法】逻辑控制
文章目录一、逻辑控制语句1. 顺序结构2. 分支结构2.1 if 语句2.2 switch 语句3. 循环结构3.1 while 循环3.2 break3.3 continue3.4 for 循环3.5 do while 循环二、输入输出方式1. 输出到控制台2. 从键盘输入三、猜数字游戏四、总结一、逻辑控制语句1. 顺序结构像我们写的代码,执行时会按照从上到下一行一行的执行。这就是顺序结构,不同的顺序,结果可能就不一样。如System.out.println(1)System.out.print原创 2021-08-10 23:24:37 · 1584 阅读 · 38 评论 -
【Java 基础语法】数据类型和运算符
文章目录一、变量和类型1. 整型变量2. 长整型变量3. 双精度浮点型4. 单精度浮点型5. 字符类型变量6. 字节类型变量7. 短整型变量8. 布尔类型变量9. 字符串类型变量10. 变量的作用域11. 变量的命名规则12. 常量13. 理解数值提升14. int 和 String 之间的相互转换二、运算符三、 注释四、 关键字五、 总结一、变量和类型在介绍下面各种类型之前我们先总的浏览一下有哪些类型(图中类型,一下并没有全部介绍,一些引用类型会在后面章节再介绍)1. 整型变量语法格式in原创 2021-08-09 04:05:34 · 1732 阅读 · 52 评论