自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 个人博客项目测试报告

个人博客系统测试报告

2023-09-05 18:32:12 621

原创 MySQL(详细)

数据库是一类软件 , 它是用来组织、保存、管理数据的.组织这些数据也是为了后续进行增删查改.MySQL 是一款开源免费的数据库. 是一个 " 客户端服务器 " 结构的程序 .

2023-07-15 18:26:27 2257 2

原创 进程的基本概念

简单来说,!例如 : 当我们去打开QQ , 于是就在系统中形成了一个进程 .通过任务管理器 , 可以看到这么多的进程在运行.

2023-07-12 19:03:04 310

原创 JVM (simple Version)

JVM 其实就是一个Java进程 , 从操作系统申请一大块内存区域, 供 java 代码使用 .申请出的内存 , 进一步划分 , 给出不同的用途 .堆中存放就是 new 出来的对象. (成员变量)栈 是用来维护方法之间的调用关系 (局部变量)元数据区(或者叫方法区) 存放的是类加载之后的类对象 与 静态变量虚拟机栈 是给 java 代码使用的, 本地方法栈 是给 jvm 内部的本地方法(C++代码)使用的 .

2023-07-12 13:48:41 464

原创 Spring 事务

事务的实现方式有两种 :编程式事务三步骤 :声明式事务的实现很简单 , 只需要在方法或者类上添加注解就可以了 ,进入方法时自动开启事务 , 方法执行完全自动提交事务 , 如果中途发生了异常会自动回滚事务.上述方法不会回滚 , 原因是 报错被 try catch 语句 处理了.解决方法 :1 . 将异常重新抛出2 . 手动回滚事务。

2023-07-10 12:31:16 490

原创 Spring AOP

AOP 是一种思想 , Spring AOP 框架 是具体实现 .AOP (Aspect Oriented Programming) : 面向切面编程 .它是对某一类事情的集中处理 (针对某一方面的问题主动进行处理 ) .举个栗子 :当用户点到博客进行发布文章时 , 后端就要判断是否已经登录 , 当去删除一个文章时 , 也需要去判断当前是否是登录状态 . 每次涉及到权限问题时都需要判断用户登录状态 . 有了AOP之后 , 我们只需要在某一处配置一下 . 就可以实现所有需要判断用户登录状态的页

2023-07-09 18:10:51 322

原创 MyBatis

MyBatis 是一款优秀的ORM 持久层框架 , 具有较高的SQL灵活性 , 支持高级映射 .ORM :Object Relation Mapping 对象关系映射 , 指的就是在Java 对象 和 数据库 的关系模型之间建立起一种对应关系 , 例如 : 一个article类 对应数据库中的一张 article 表 , 表中的字段和 对象中的属性一一对应 .

2023-07-07 22:01:20 195

原创 Spring MVC

MVC 是一种设计思想 , 而 Spring MVC 就是对 MVC 思想的具体实现 .MModel (模型)是用来处理应用程序数据逻辑的部分 , Model 对象 通常与 数据库进行交互VView (视图)将程序进行渲染展示给用户CController (控制器)它是处理用户交互的部分 , 负责的是 将用户的请求 发送给 Model , 再将处理好的程序交给 View 进行渲染 . 承担一个承上启下的角色 .

2023-07-06 00:00:42 708

原创 Spring Boot

Spring Boot是由 Pivotal 团队提供的框架 . 其目的就是为了简化 Spring 程序开发的 .让 本质上是为了让 Spring 开发更方便 , 让程序猿考虑的事情更少 .

2023-07-05 13:21:48 282

原创 了解Spring

Spring : 它是一个开源框架 , 是包含了众多工具方法的 IoC容器 ,(说的就是对象的创建和销毁的权利都交给了 Spring 来管理了,它本身又具备了存储对象和获取对象的能力,通俗点来讲Spring就是容器, 帮我们管理对象的生命周期) 。

2023-07-03 21:06:08 677

原创 [Java] Socket (UDP , TCP)

这么做的好处 : 因为服务器它是用来处理客户端的请求的 , 因此它就要有一个明确的端口号,让客户端可以找到 . 对于客户端来说 , 属于主动发送请求的一方 , 服务器实现不需要知道客户端的端口号 , 因此让系统自动分配端口号给客户端.此处的Socket 对象要被客户端 / 服务器 都使用的 . 对于服务器来说 Socket 对象往往都要绑定一个具体的端口号(自己主动绑定) . 客户端这边则不需要手动指定 , 让系统自动分配即可.Socket : 通过Socket对象来进行服务器和客户端之间的通信!

2023-04-19 22:16:04 1316

原创 [Java] 网络

初始网络 , 网络是如何传送数据的. OSI 七层协议模型 , TCP/IP 5层协议

2023-04-08 15:02:46 83

原创 [Java] synchronized的锁优化机制

Java 中的锁优化机制 附加其他

2023-04-02 18:06:08 1145

原创 [Java] 文件 , InputStream, OutputStream

针对文件的读写操作

2023-03-30 21:05:56 683

原创 [Java] CAS

CAS中的ABA问题, 使用CAS实现自旋锁.

2023-03-29 10:19:04 148

原创 常见锁策略

常见的一些锁策略

2023-03-28 15:24:49 505

原创 定时器 + 线程池

线程池的实现 , 定时器的实现

2023-03-26 21:40:30 868

原创 阻塞队列实现

阻塞队列实现

2023-03-26 09:15:29 504 1

原创 单例模式(线程安全)

单例模式 (饿汉模式,懒汉模式)

2023-03-25 22:12:17 618

原创 多线程wait

多线程中 wait notify sleep 之间的配合,区别

2023-03-25 19:28:19 1031 4

原创 多线程安全

线程安全的问题 及 解决方案

2023-03-19 10:54:18 253

原创 Thread的基本操作

了解线程的创建 , 线程的状态 , 线程的一些常见属性

2023-03-18 20:17:39 1123

原创 字符串常量池

常量池的一些理解

2023-02-12 21:46:45 263

原创 TreeSet 与 TreeMap And HashSet 与 HashMap

java中Map接口 与 Set接口的讲解 及其一些原理

2023-02-12 11:12:21 641

原创 二叉搜索树(查找,插入,删除)

二叉搜索树的增.删.查!

2023-02-10 20:04:05 946

原创 队列 (Queue)

队列的基本操作!单链表实现队列!循环队列实现(3中实现方法)

2023-02-08 10:30:00 434 1

原创 非递归实现 前序,中序,后序 遍历

前序中序后序遍历的非递归实现

2023-02-06 18:38:34 261

原创 二叉树 - (前序,中序,后序,层序 遍历实现)

什么是二叉树?前序遍历?中序遍历?后序遍历?层序遍历?二叉树的基本操作

2023-02-06 09:30:00 774

原创 堆 ----> 优先级队列

堆是什么? 如何去创建堆?PriorityQueue 集合的一些使用 和 洞悉

2023-02-04 12:00:00 63

原创 七大排序 (插入,希尔,选择,冒泡,堆,快排,归并)

目录排序 : 所谓排序就是使一串无序的数据进行排序后,变为递增或递减的数列.稳定性 : 若有一组数据 : (为了看出效果,我加了一个标识符 a 与 b)​编辑​编辑一. 插入排序 (直接插入排序)二 . 希尔排序 三 . 选择排序 四 . 冒泡排序 我们可以看出第一幅图排序后 : 相同的两个数字5它们的前后顺序还是原来的顺序(a下标的5 还是在 b下标5的前面). 这是我们就认为它是一个稳定的排序但是第二幅图排序后 : (b下标的5 在 a下标5的前面). 这是我们就认为它是不稳定的排序. 常见的排序有以

2023-02-02 23:06:17 1684

原创 Java - LinkedList

模拟一份LinkedList 更好的去了解..

2023-01-04 18:31:29 298

原创 Java - 顺序表 与 ArrayList

3.到第三步,我们就可以去放了,从最后一个元素依次往后放,注意边界值. i >= pos.(要把pos位置的空腾出来).3.也可以传过去一个类型(实现了Collection接口的类 并且它是E(泛型)的本身或者是子类)2.如果要插入的位置等于数组的长度(证明数组满了) 那么我们就要扩充数组.这里如果顺序表里面操作的是引用数据类型,那么就需要把它每个元素置为空.这就是我们经常要使用的一些ArrayList集合类里面的一些方法.我们重点来看一下最后一个方法 : 它的作用是。4.把data放入pos位置.

2023-01-02 19:00:00 28

原创 Java - 泛型

因为引用类型之间不能通过大小写比较,在前面的章节中提到过 : 我们要通过调用compareTo().不能调用compareTo()方法是因为 : 当前的泛型类没有实现Comparable接口.我们把泛型方法定义成静态的,这样我们可以直接通过类名就可以去调用它.不用再去new对象了.只需要在方法的返回值类型前面加上一个参数列表就好了.希望可以帮到大家~~~~~~有不懂的地方可以私信我.在定义泛型的时候 : 我们可以在 中写多个参数。,从代码上讲,就是对类型实现了参数化.现在我们去实例化一个对象.

2023-01-02 11:00:00 28 1

原创 Java - 异常

我想强调的是Exception是所有受查异常的" 父类 " , RuntimeException 是所有运行时异常的 " 父类 ".原因在于 : 这个程序不会执行到第二个catch(),不论try里面出现什么异常都会被第一个catch()接收,Exception是所有异常类的父类,他能捕获所有的异常.而catch()括号里面写的就是可能被抛出的异常类型,catch后面的花括号里面可以写一些输出语句来提醒触发了什么异常,上面的图,我标注了受查异常和运行时异常,它们都继承了Exception类.

2023-01-01 14:30:00 155

原创 Java - String类

感觉这样写有点绕. 大家只要记住第二点那四个字符在split()写的时候 每个字符前面要加一个"\\"在String类中Java提供了一个判断两个字符串相不相同的方法.equals(Object o)可以看出 差了非常多.因此在以后写代码的时候,尽量不要频繁的去使用 ' + ' 去拼接字符串.下面的是在String类中的equals实现 大家稍微了解一下,我们主要的是要去使用它.在这个文章中,主要去说一下String类的一些常用的方法.在反汇编中我们来看一下java它是怎么去实现字符串拼接的.

2023-01-01 09:30:00 88

原创 Java 内部类

在实例内部类中 是不可以定义静态成员变量的.因为静态成员变量是不依赖对象的. 可以把实例内部类当做是Person类的一个非静态方法. 那么在方法内中存储的都是局部变量,局部变量是存储在栈上面的. 而Java中规定静态变量是定义在类中方法外面,静态变量是存储在方法区的.在Person类内部的类 要是想要使用Student类内部的成员变量/成员方法就要去实例化Student对象.但是我们可以在静态类的方法内部去实例化一个Person对象,然后通过引用去调用成员变量.希望能帮到大家~~~~~~~~

2022-12-31 13:57:49 220

原创 Java 抽象类 与 接口

因为抽象方法的存在就是为了被重写,加上这些关键字后,就不能被子类重写了,所以在定义抽象方法的时候,java就会提示错误!因为在抽象类它自己本身不能进行实例化,而且抽象方法也没有具体的实现,所以只能是子类重写方法后,体现出抽象类的价值!4.什么是抽象方法 : 一个方法被abstract修饰,没有具体的实现,只要包含抽象方法,这个类必须是抽象类!5.接口当中的方法 不能有具体的实现, 但是从JDK8开始 可以写一个default修饰的方法。抽象类当中,可以包含抽象方法和非抽象方法。

2022-12-31 08:30:00 119

原创 Java 多态

通过一个例子,我们先来感受一下 : 定义两个类 Animal 和 Cat , 在Cat类中重写了Animal的fun()方法, 在main方法中 new 了一个 Cat 对象,并用Animal类的引用接收.当发生向上转型之后,并且去通过引用去调用方法时,如果子类中重写了这个方法,那么编译器就会去调用子类重写后的方法.这就是动态绑定.换句话说 : 当父类引用 引用的对象不一样的时候 表现出的行为是不一样的!一个引用, 引用的对象不一样,那么所表现的行为不一样,这种思想称为多态.

2022-12-30 18:25:22 2511

原创 Java 引用数据类型 比较 (comparable / comparator)

如果大家不太懂Arrays.sort()是怎么进行比较的, 那大家看一下这个代码 : 在java底层代码中也是类似这样去比较的(通过调用compareTo()). 通过Sort()方法.也可以进行排序.: 因为要比较的是Student这个类所以里面就写Student.大家暂时先这样理解.之后我会出一期关于泛型的文章.或者也可以写一个比较年龄的比较器.这样在我们用的时候,直接去调用就好了.不用在主要的类里面大动干戈了.这时我们就可以调用Arrays.sort()的方法来进行对Student数组的排序.

2022-12-30 08:00:00 305 1

原创 java 深拷贝 与 浅拷贝

先看第一幅图 : 这是我们第一次给student1拷贝一份的时候,把student的name(李华)跟money引用里面存储的地址都复制给了student1.通过 代码 跟 图 可以知道在给money引用里面的m值赋值时.会同时改变student 与 student1的值.因为重写后的clone方法的返回值是Object 所以在赋值给Student类或者Money类的时候要进行向下转型.从运行结果看到 : student1 的 name 值 与 m 值 跟 student是一样的.

2022-12-29 22:56:11 30

空空如也

空空如也

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

TA关注的人

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