1、String的定义 String是一个final类,既不能被继承的类 String类实现了java.io.Serializable接口,可以实现序列化 String类实现了Co ...
前言 我相信每一个程序员都避免不了和数据库打交道,其中Mysql以其轻量 开源成为当下最流行的关系型数据库。Mysql . 以前以MyISAM作为默认存储引擎,在 . 版本以后,以InnoDB作为默认存储引擎,相比MyISAM,InnoDB完整的支持ACID事务特性,同时支持行级锁,支持事务这一特性也决定了InnoDB代替MyISAM成为主流存储引擎的一大决定性因素。 Mysql系统架构图 mys ...
2022-03-22 18:27 0 752 推荐指数:
1、String的定义 String是一个final类,既不能被继承的类 String类实现了java.io.Serializable接口,可以实现序列化 String类实现了Co ...
一、MySQL内部组件结构 我们简单的通过一张图来分析MySQL内部组件结构: Server层 主要包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现 ...
今天我们聊聊volatile底层原理; Java语言规范对于volatile定义如下: Java编程语言允许线程访问共享变量,为了确保共享变量能够被准确和一致性地更新,线程应该确保通过排它锁单独获得这个变量。 首先我们从定义开始入手,官方定义比较拗口。通俗来说就是一个字 ...
synchronized底层原理详解# 一、特性## 原子性:操作整体要么全部完成,要么全部未完成。就是为了保证数据一致,线程安全。 有序性:程序的执行顺序按照代码的顺序执行。一般情况下,虚拟机为了提高执行效率,会对代码进行指令重排序,运行的顺序可能和代码的顺序不一致,结果不变 ...
LinkedHashSet详解 1. 说明 LinkedHashSet是HashSet的子类 LinkedHashSet底层是一个LinkedHashMap,底层维护了一个数组 + 双向链表 LinkedHashSet根据元素的hashCode值来决定元素的存储位置,同时使用链表 ...
HashSet底层原理详解 1. 说明 HashSet实现了Set接口 HashSet底层实质上是HashMap 可以存放null值,但是只能有一个null HashSet不保证元素是有序的,取决于hash后,再确定索引的结果,即不保证存放元素的顺序和取出顺序一致 不能有 ...
最近做的几个项目都是用Map来存储的数据 ,虽然用得挺顺手,但是对HashMap的底层原理却只知甚少,今天便来简单学习和整理一下。 数据结构中有数组和链表这两个结构来存储数据。 数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分查找时间复杂度小,为O(1);数组 ...
本篇博文将介绍java并发底层的实现原理,我们知道java实现的并发操作最后肯定是由我们的CPU完成的,中间经历了将java源码编译成.class文件,然后进行加载,然后虚拟机执行引擎进行执行,解释为汇编语言,然后转为操作系统指令,然后转为1,0,最后CPU进行识别执行。 提到java的并发 ...