自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 2021-10-7 写在开始

写在开始对于刚毕业时的迷茫对于刚毕业时的迷茫笔者于今年6月毕业于双非院校sc本科,在秋招时放弃了去互联网的机会选择了国企。三个月下来发现这里的生活或许是达到了所谓的955WLB,但是每天摸鱼写文档接触不到技术的日子感觉不是我想要的生活…因此,开了这篇博客打算让自己从头开始复习,重拾Java技术栈,找回当初学技术的热情。如果有什么错误的地方还请各位批评指正,欢迎大家一起交流学习。...

2021-10-07 21:38:11 92

原创 2022-02-21 八、查找(上:线性、二分)

查找(上:线性、二分)1. 线性查找1.1 基本介绍1.2 设计思路1.3 代码实现2. 二分查找2.1 基本介绍2.2 设计思路-单数版2.3 代码实现2.4 设计思路2.5 代码实现1. 线性查找1.1 基本介绍一种简单的查找方式,从头到尾遍历,直到找到指定数字。1.2 设计思路for/while循环遍历数组,找到指定数字则返回下标,否则返回-1。1.3 代码实现public class Demo24 { public static void main(String[] a

2022-02-21 16:50:10 586 1

原创 2022-2-16 七、排序(下:归并、基数)

排序(下)1. 归并排序1.1 基本介绍1.2 设计思路1.3 代码实现2. 基数排序2.1 基本介绍2.2 设计思路2.3 代码实现1. 归并排序1.1 基本介绍归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(divide)成一些小的问题然后递归求解,而治(conquer)的阶段则将分的阶段得到的各答案"修补"在一起,即分而治之)。1.2 设计思路首先图片展示一下什么是分治思想1、可以看到

2022-02-16 14:51:36 116

原创 2022-02-11 十八、JDK8新特性

JDK8新特性1. Java8概述1. Java8概述Java 8 (又称为jdk 1.8) 是Java 语言开发的一个主要版本。Java 8 是oracle公司于2014年3月发布,可以看成是自Java 5 以来最具革命性的版本。Java 8为Java语言、编译器、类库、开发工具与JVM带来了大量新特性。*...

2022-02-14 16:45:07 5638

原创 2022-01-04 十七、反射与动态代理

反射与动态代理1. 反射机制概述2. 理解Class类并获取Class实例2.1 Class类的理解2.2 获取Class实例的4种方式1. 反射机制概述前言:反射对于开发框架的学习颇有帮助,这里可以打个基础,后续看源码能理解即可。Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。反射原理:加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个类只有一个Class

2022-02-09 16:25:31 157

原创 2021-12-23 十六、网络编程

网络编程1. 网络编程概述2. 网络通信要素概述2.1 IP和端口号1. 网络编程概述Java是Internet 上的语言,它从语言级上提供了对网络应用程序的支持,程序员能够很容易开发常见的网络应用程序。Java提供的网络类库,可以实现无痛的网络连接,联网的底层细节被隐藏在Java 的本机安装系统里,由JVM 进行控制。并且Java 实现了一个跨平台的网络库,程序员面对的是一个统一的网络编程环境。网络编程的目的:直接或间接地通过网络协议与其它计算机实现数据交换,进行通讯。网络编程中有两个主要的

2021-12-31 16:24:38 664

原创 2021-11-09 十五、IO流

IO流1. File类1.1 File类的实例化1.2 File的常用方法2. IO流2.1 IO流基本介绍2.2 流的分类3. 节点流3.1 FileReader3.2 FileWriter3.3 FileInputStream和FileOutputStream4. 缓冲流1. File类基本介绍:java.io.File类(下面简称File):文件和文件目录路径的抽象表示形式,与平台无关File类能新建、删除、重命名文件和目录,但File类不能访问文件内容本身。如果需要访问文件内容本身,则需

2021-12-22 16:27:51 565

原创 2021-11-05 十四、泛型

泛型1. 泛型的基本介绍1.1 泛型的设计背景1.2 为什么要有泛型2. 在集合中使用泛型3. 自定义泛型结构3.1 自定义泛型类3.1.1 泛型类的继承关系3.1.2 自定义泛型类/接口的注意点3.2 自定义泛型方法4. 泛型的使用场景5. 通配符的使用5.1 有限制条件的通配符的使用6. 使用实例1. 泛型的基本介绍泛型相当于标签的作用例如:中药店,每个抽屉外面贴着标签超市购物架上很多瓶子,每个瓶子装的是什么,有标签。1.1 泛型的设计背景集合容器类在设计阶段/声明阶段不能确定这个容

2021-11-07 14:30:45 435

原创 2021-11-01 十三、集合

集合1. 集合框架概述1.1 集合框架与数组的对比及概述1.2 集合框架涉及到的API2. Collection接口2.1 Iterator迭代器接口1. 集合框架概述1.1 集合框架与数组的对比及概述集合、数组都是对多个数据进行存储操作的结构,简称Java容器。说明;此时的存储,主要是指能存层面的存储,不涉及到持久化的存储(.txt,.jpg,.avi,数据库中)回顾一下数组在内存存储方面的特点:一旦初始化以后,它的长度就确定了。数组一旦定义好,它的数据类型也就确定了。我们就只能操作

2021-11-04 23:36:40 427

原创 2021-11-01 十二、枚举与注解

枚举与注解1. 枚举类的使用1.1 基本介绍1.2 枚举类的实现1.2.1 自定义枚举类1.2.2 使用enum关键字定义枚举类1.2.3 使用enum关键字定义的枚举类实现接口2. 注解的使用2.1 基本介绍2.2 Annotation的使用示例2.3 如何自定义注解2.4 jdk中4个基本的元注解的使用2.4.1 @Retention2.4.2 @Target2.4.3 @Documented2.4.4 @Inherited2.5 利用反射获取注解信息2.6 JDK8新特性2.6.1 可重复注解@Rep

2021-11-01 21:33:16 159

原创 2021-10-25 十一、常用类

常用类1. String相关类1.1 String类1.1.1 概述1.1.2 字面量赋值和构造器赋值的区别1.1.3 String不同实例化方式的对比1.1.4 String不同拼接操作的对比1.1.4 JVM中涉及字符串的内存结构1.1.5 String的常用方法1. String相关类1.1 String类1.1.1 概述String:字符串,使用一对""引起来表示。String声明为final的,不可被继承final String val = "final";val = "ch

2021-10-29 23:24:36 624

原创 2021-10-28 六、排序(中:简单插入、希尔、快排)

排序(中)1. 简单插入排序1.1 基本介绍1.2 设计思路1.3 代码实现2. 希尔排序2.1 基本介绍2.2 设计思路2.3 代码实现(交换法)2.4 代码实现(移位法)3. 快速排序3.1 基本介绍3.2 设计思路3.3 代码实现(交换法)3.4 代码实现(插值法)1. 简单插入排序1.1 基本介绍对于欲排序的元素以插入的方式找寻该元素的适当位置,以达到排序的目的。1.2 设计思路首先把n个待排序的元素看成为一个有序表和一个无序表,开始时有序表中只包含一个元素,无序表中包含有n-1个

2021-10-29 22:27:28 368

原创 2021-10-26 五、排序(上:冒泡、简单选择)

排序(上)1. 排序算法介绍2. 算法的时间复杂度2.1 度量一个程序(算法)执行时间的两种方法2.2 什么是时间频度2.3 时间频度的忽略项2.3.1 常数项2.3.2 低次项2.3.3 系数2.4 时间复杂度2.4.1 基本介绍1. 排序算法介绍基本概要排序是将一组数据,依指定的顺序进行排列的过程。分类内部排序:指将需要处理的所有数据都加载到内部存储器中进行排序。外部排序法:数据量过大,无法全部加载到内存中,需要借助外部存储进行排序。2. 算法的时间复杂度2.1 度量

2021-10-27 22:02:28 130

原创 2021-10-21 四、递归

递归1. 递归是什么1.1 递归的运行说明1.2 递归的应用场景1.3 递归必须遵守的规则2. 递归回溯算法(迷宫问题)2.1 设计思路2.2 代码实现2.3 完整代码2.4 修改迷宫行走策略3. 八皇后问题1. 递归是什么递归就是方法自己调用自己,每次调用时传入不同的变量。递归有助于编程者解决复杂的问题,同时可以让代码变得简洁。1.1 递归的运行说明根据JVM的运行规则:当程序执行到一个方法时,就会在栈空间中开辟一块新的栈帧空间;每个空间中都是互相独立的,也就是说数据(局部变量)不

2021-10-25 21:38:04 320

原创 2021-10-21 十、多线程

多线程1. 程序、进程、线程的基本概念1.1 进程与线程1.2 使用多线程2.线程的创建和使用2.1 线程的创建和启动2.2 Thread类构造器的使用2.3 创建多线程的方式一:继承Thread类(before JDK1.5)2.3.1 Thread类的相关方法2.3.2 线程的调度2.3.3 线程的优先级2.4 创建多线程的方式二:实现Runnable接口(before JDK1.5)1. 程序、进程、线程的基本概念程序(program):为完成特定任务、用某种语言编写的一组指令的集合。即指一段静

2021-10-25 21:35:21 311

原创 2021-10-19 九、异常

异常1. 异常概述与异常体系结构2. 异常分类2.1 运行时异常2.2 编译时异常3. 异常处理机制一:try-catch-finally3.1 异常的处理:抓抛模型3.2 finally的使用4. 异常处理机制二:throws5. 重写方法声明抛出异常的原则6. 手动抛出异常7. 用户自定义异常类8. 异常总结1. 异常概述与异常体系结构在使用计算机语言进行项目开发的过程中,即使程序员把代码写得尽善尽美,在系统的运行过程中仍然会遇到一些问题,因为很多问题不是靠代码能够避免的,比如:客户输入数据的格式

2021-10-20 21:19:13 271

原创 2021-10-18 三、栈

栈1. 栈的定义1.1 数组实现栈的设计思路1.2 代码实现1.3 栈的应用场景2. 栈实现综合计算器2.1 设计思路2.2 代码实现3. 波兰表达式3.1 简介1. 栈的定义栈是一个先入后出(FILO-First In Last Out)的有序列表。栈(stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top);另一端为固定的一端,称为栈底(Bottom)。根据栈的定义可知,最先放入栈中元素在栈底,最后放入的元素在栈

2021-10-20 21:15:55 503

原创 2021-10-18 八、面向对象(下)

面向对象(下)1. 关键字:static1.1 前序1.2 static关键字的使用1.3 类变量 vs 实例变量内存解析1.4 static 修饰方法1.5 自定义 ArrayUtil 工具类1.6 单例(Singleton)设计模式2. 理解 Java程序入口 main() 方法2.1 main()方法的基本介绍2.2 main()方法的使用说明2.3 命令行参数用法3. 类的成员之四:代码块3.1 代码块的基本介绍3.2 静态代码块3.3 非静态代码块4. 关键字:final4.1 final(最终的

2021-10-19 23:40:40 942

原创 2021-10-15 二、链表

链表1. 链表的定义2. 单向链表的基本说明2.1 带头单链表在内存中的存储2.2 带头单链表的逻辑结构2.3 无序链表设计思路2.4 代码实现2.5 出现的问题2.6 有序链表设计思路2.7 代码实现1. 链表的定义链表是有序的列表,是以节点的方式在内存中来存储的,是链式存储。每个节点最少都包含两个域:data 域(存放数据),next 域(指向下一个结点的地址)。链表的各个节点不一定是连续存储。链表分带头节点的链表和没有头节点的链表,根据实际的需求来确定。一定要学好链表,他是后面数据结

2021-10-16 21:05:49 298

原创 2021-10-13 一、数组与队列

数组与队列1. 稀疏数组1.1 何为稀疏数组1.2 应用场景1.3 图文解析1.4 代码实现与思路1. 稀疏数组1.1 何为稀疏数组稀疏数组,首先把稀疏拆出来,理解为写程序的你,头发日渐稀疏,渐少。比如一个棋盘,可以用二位数组表示,这个棋牌(只有三种数据,0为没有棋子,1为黑棋,2为白棋),我们可以只提取出黑白棋的位置构成稀疏数组。1.2 应用场景比如 一些量大,且多数为重复值的时候,可以使用(棋牌,地图等等)1.3 图文解析首先创建新的数组来记录数组有几行、几列、有多少不同的值

2021-10-15 22:35:36 236

原创 2021-10-14 七、面向对象(中)

面向对象(中)1. 面向对象的特征二:继承性1.1 继承性的使用与理解1.2 Java 中关于继承性的规定2. 方法的重写(override/overwrite)2.1 方法重写的细节规定3. 关键字:super3.1 super的使用3.2 super调用构造器4. 子类对象实例化过程4.1 从结果上看(继承性)4.1.1 深入理解构造器是否会创建对象4.2 从过程上看5. 面向对象特征之三:多态性5.1 多态的使用5.2 虚拟方法的补充5.3 向下转型的使用6. Object 类的使用6.1 Obje

2021-10-15 21:47:11 521

原创 2021-10-13 数据结构篇(Java)目录

数据结构篇(Java)首先放上视频地址https://www.bilibili.com/video/BV1E4411H73v.下面的内容取自尚硅谷的Java基础教程,并加上自己的部分理解。标题地址

2021-10-13 23:04:38 158

原创 2021-10-12 六、面向对象(上)

面向对象(上)1. 面向过程与面向对象1.1 面向对象:Object Oriented Programming1.2 面向过程:Procedure Oriented Programming1.3 学习面向对象内容的三条主线2. 类和对象2.1 Java 类及类的成员2.2 类与对象的创建及使用2.3 对象的创建和使用:内存解析2.4 类的成员之一:属性1. 面向过程与面向对象何谓“面向对象”的编程思想?首先解释一下什么是“思想”。例如:先问你个问题:你想做个怎样的人?可能你会回答:我想做个好

2021-10-13 21:40:03 651

原创 2021-10-11 五、数组

数组1. 数组的概述1.1数组的理解1.2 数组的相关概念1.3 数组的特点1.4 数组的分类2. 一维数组的使用2.1 一维数组的声明和初始化2.2 如何调用数组的指定位置的元素2.3 如何获取数组的长度2.4 如何遍历数组2.5 数组元素的默认初始化值2.6 数组的内存解析2.6.1 Java虚拟机内存的简化结构2.6.2 一维数组的内存解析3. 多维数组的使用3.1 二维数组3.1.1 二维数组的使用3.1.2 二维数组元素的默认初始化值3.2 二维数组的内存解析1. 数组的概述1.1数组的理解

2021-10-12 20:39:02 219

原创 2021-10-10 四、程序流程控制

程序流程控制1. 程序流程控制概述2. 顺序结构3. 分支结构3.1 分支语句1:if-else结构3.2 分支语句2:switch-case结构4. 循环结构4.2 while循环4.3 do-while循环4.4 嵌套循环结构4.5 break、continue的使用4.5.1 break的使用4.5.2 continue的使用4.5.3 return的使用1. 程序流程控制概述流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块。其流程控制方式采用结

2021-10-10 20:27:15 308

原创 2021-10-09 三、运算符

运算符1. 运算符介绍1.1 算术运算符1.2 赋值运算符1.3 比较运算符1.4 逻辑运算符1.5 位运算符1.6 三元运算符2. 运算符的优先级1. 运算符介绍运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。1.1 算术运算符/*运算符之一:算术运算符+ - * / % (前)++ (后)++ (前)-- (后)-- */class Day3Test{ public static void main(String[] args) { //除号:/ int nu

2021-10-09 21:48:18 280

原创 2021-10-08 二、保留字、标识符、变量

变量、标识符、保留字1. 关键字与保留字2. 标识符2.1 什么是标识符(Identifier)2.2 定义合法标识符规则【重要】2.3 Java 中的名称命名规范3. 变量3.1 变量的声明与使用3.1.1 变量的概念3.1.2 变量的作用3.1.3 使用变量注意3.1.4 声明变量3.1.5 变量的赋值3.1.6 声明并赋值变量3.1.7 补充:变量的分类-按声明的位置的不同3.2 基本数据类型3.2.1 整数类型: byte、short、int、long3.2.2 浮点类型:float、double3

2021-10-08 20:22:06 156

原创 2021-10-07 Java开发打怪升级路程

Java学习目录这里将会记录自己过去学过以及未来会去学习的东西…篇章地址1. Java基础篇https://blog.csdn.net/weixin_43901488/article/details/120642333?spm=1001.2014.3001.5501

2021-10-07 22:58:07 115

原创 2021-10-07 一、Java语言概述

文章目录1. 软件开发介绍1.1常用的DOS命令2. 计算机编程语言介绍3. Java语言概述3.1 Java简史3.2 Java技术体系平台3.3 Java主要特性4. Java程序运行机制及运行过程4.1 Java两种核心机制5. Java语言的环境搭建5.1 明确什么是JDK和JRE5.2 官网地址1. 软件开发介绍软件开发,即一系列按照特定顺序组织的计算机数据和指令的集合。软件有系统软件和应用软件之分。人机交互方式:图形化界面(Graphical User Interface GUI)

2021-10-07 22:45:27 386

原创 2021-10-07 Java基础篇目录

Java基础篇首先放上视频链接.接下来的内容取自尚硅谷的Java基础教程,并加上自己的部分理解。

2021-10-07 21:44:48 268

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除