
java
文章平均质量分 75
ZJ慧
一个刚开始努力且有梦想的应届菜鸟
展开
-
java容器—Collection(ArrayList)
java容器原创 2022-03-31 21:30:54 · 425 阅读 · 0 评论 -
JVM-双亲委派机制
JVM-双亲委派机制-学习笔记 Java虚拟机对class文件采用的是按需加载的方式,也就是说当需要使用该类时才会将它的class文件加载到内存生成class对象。而且加载某个类的class文件时,java虚拟机采用的是双亲委派模式,即把请求交由父类处理,它是一种任务委派模式。 一. 原理 如果一个类加载器收到了类加载请求,它并不会自己先去加载,而是把这个请求委托给父类的加载器去执行 如果父类加载器还存在其父类加载器,则进一步向上委托,依次递归请求最终将到达顶层的启动类加载器 如果父类加载器可以完原创 2021-09-14 17:54:39 · 99 阅读 · 0 评论 -
JVM-类加载器
类加载器-学习笔记 类加载器类加载器-学习笔记一. jvm架构简图二. 类加载器a. 类加载过程b. 类加载器的分类虚拟机自带的加载器c. ClassLoader 一. jvm架构简图 class文件:称为字节码文件 类加载子系统:将class文件加载到内存,生成class对象,同时对必要的静态属性做一些初始化(在方法区体现) 执行引擎:执行字节码指令 二. 类加载器 类加载器子系统作用 类加载器子系统负责从文件系统或者网络中加载class文件,class文件在文件开头有特定的文件标识(验证原创 2021-09-14 17:52:19 · 115 阅读 · 0 评论 -
MySQL技术内幕学习笔记--InnoDB存储引擎(一)
MySQL技术内幕学习笔记 第二章 InnoDB存储引擎(一) InnoDB是事务安全的MySQL存储引擎,是OLTP应用中核心表的首选存储引擎。Heikki Tuuri(1964年,芬兰赫尔辛基)是InnoDB存储引擎的创始人。 1. InnoDB存储引擎概述 InnoDB存储引擎最早由Innobase Oy公司开发,从MySQL 5.5版本开始是默认的表存储引擎 该存储引擎是第一个完整支持ACID事务的MySQL存储引擎 特点是 行锁设计、支持MVCC、支持外键、提供一致性非锁定读、同时被设计用来原创 2021-07-07 16:47:28 · 374 阅读 · 0 评论 -
拦截器学习笔记
拦截器 文章目录拦截器一.拦截器拦截器和过滤器二.拦截器的方法介绍三.拦截器的使用场景四.demo实现(Springboot) 一.拦截器 Spring MVC中的拦截器(Interceptor)类似于Servlet中的过滤器(Filter),它主要用于拦截用户请求并作相应的处理。例如通过拦截器可以进行权限验证、记录请求信息的日志、判断用户是否登录等。 拦截器和过滤器 拦截器是基于java的反射机制的,而过滤器是基于函数回调。 拦截器不依赖与servlet容器,过滤器依赖与servlet容器。 拦截器原创 2021-07-05 17:58:12 · 455 阅读 · 0 评论 -
数据结构-优先队列和堆篇
数据结构-优先队列和堆篇 文章目录数据结构-优先队列和堆篇一. 优先队列二. 堆1. 最大堆定义2. 堆的操作3. Replace:取出最大元素后,放入一个新元素4. heapify: 将任意数组整理成堆的形状5. 基于堆的优先队列 一. 优先队列 普通队列:先进先出,后进后出 优先队列:出队顺序和入队顺序无关;和优先级相关 动态选择优先级最高的任务执行 定义队列: Interface Queue <-------------PriorityQueue implement Qu原创 2021-02-26 18:45:04 · 358 阅读 · 0 评论 -
数据结构-集合和映射篇
数据结构-集合和映射篇 文章目录数据结构-集合和映射篇一. 集合(Set)1. 定义集合2. 基于二分搜索树的集合定义3. 基于链表的集合定义4. 集合类复杂度分析5. 集合的时间复杂度分析二. 映射1. 定义映射接口2. 基于链表的映射节点构造3. 基于二分搜索树的映射节点构造4. 映射的时间复杂度分析5. 集合和映射的关系 一. 集合(Set) Set Void add(E) 不能添加重复元素 应用:客户统计、词汇量统计 Void remove(E) Boolean contains(E) Int原创 2021-02-25 17:03:25 · 737 阅读 · 0 评论 -
数据结构-二分搜索树篇
数据结构-二分搜索树篇 文章目录数据结构-二分搜索树篇二叉树二分搜索树:也是二叉树1. 定义二分搜索树节点2. 二分搜索操作3. 二分搜索树的遍历 树结构本身是一种天然的组织结构 二叉树 和链表一样,动态数据结构 class Node{ E e; Node left; Node right; } 二叉树具有唯一 根节点 二叉树每个节点最多有两个孩子:左孩子,右孩子 叶子结点 二叉树每个节点最多有一个父节点 二叉树具有天然的递归结构 每个节点的左子树也是二叉树,每个节点的右子原创 2021-02-24 16:19:48 · 182 阅读 · 0 评论 -
数据结构-链表和递归篇
数据结构-链表和递归篇 一. 链表(Linked List) 动态数组、栈、队列底层依托静态数组;靠resize解决固定容量问题 链表 :真正的动态数据结构 最简单的动态数据结构 更深入的理解引用(或者指针) 更深入的理解递归 辅助组成其他数据结构 数据存储在“节点”(Node)中 优点:真正的动态,不需要处理固定容量的问题 缺点:丧失了随机访问的能力 1. 数组和链表的对比 对比 数组 链表 适用场景 最好用于索引有语义的情况 不适用于索引有语音的情况 最大的原创 2021-02-24 15:42:23 · 774 阅读 · 0 评论 -
数据结构-栈和队列篇
数据结构-栈和队列篇 一. 栈 栈也是一种线性结构,相比数组,栈对应的操作是数组的子集 只能从一端添加,也只能从一端去除元素,这一端称为栈顶 栈是一种后进先出的数据结构(Last In First Out) 栈的应用: 系统中常用的"撤销操作"; 程序调用的系统栈(记录子程序调用时中断点的位置):在编程进行子过程的调用时(当fun A()进行到2号中断点时,程序会调用fun B,即A2进栈),当一个子过程进行完毕后会自动转入到上层调用中断的位置(当fun C结束后,会转到fun B的2号位置,即B2原创 2021-02-23 17:48:13 · 138 阅读 · 0 评论 -
数据结构-数组篇
数据结构-数组篇 1. 基础 ‘ ‘ public class Main { /** * 数组基础 * 索引 索引可以有语意也可以没有语意 * @param args */ public static void main(String[] args) { int[] arr = new int[10]; for(int i=0;i<arr.length;i++){ arr[i] = i;原创 2021-02-23 17:26:28 · 118 阅读 · 0 评论