排序
JVM学习笔记总览
开源项目推荐: Java成长之路 Java技术栈的全套知识点总结 一、思维导图 工作流程: 二、清单 1 2.1. 类加载子系统 1-类加载子系统概述 2-类加载过程 3-类加载器分类 4-类加载器的常用方法 5-双...
Java基础:volatile详解
Java基础:volatile详解 1、volatile保证可见性 1.1、什么是JMM模型? 1.2、volatile保证可见性的代码验证 1.2.1、无可见性代码验证 1.2.1、volatile保证可见性验证 2、volatile不保证原子性 2....
深入浅出学Java——HashMap
深入浅出学Java——HashMap 哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,本文会...
ArrayList扩容机制详解
简介 ArrayList 是 java 集合框架中比较常用的数据结构了。继承自 AbstractList,实现了 List 接口。底层基于数组实现容量大小动态变化。允许 null 的存在。同时还实现了 RandomAccess、Cl...
Mysql练习
一、数据库设计 按照下列要求设计表,并设计表约束 emp表 dept表 说明: 部门表和雇员表是一对多关系薪水等级表和雇员表是一对多关系数据类型合理设置正确设置表键约束。 二、sql查询总览 查询薪...
关于ArrayList删除的一些记录
关于ArrayList删除的一些记录 首先创建一个list集合,并填入元素 public void listExercise(){ List<String> list = new ArrayList<>(); list.add('aaa'); list.add('aaa'); list.add('aa...
Mybatis笔记
Mybatis简介 MyBatis历史 MyBatis最初是Apache的一个开源项目iBatis, 2010年6月这个项目由Apache Software Foundation迁移到了Google Code。随着开发团队转投Google Code旗下,iBatis3.x正式更...
2.2.8 对象的实例化内存布局与访问定位+直接内存
对象的实例化内存布局与访问定位+直接内存 一、对象的实例化 1、创建对象的方式 new 最常见的方式 变形1 : Xxx的静态方法 变形2 : XxBuilder/XxoxFactory的静态方法 Class的newInstance():...
2.6.4 锁优化
锁优化 高效并发是JDK5升级到JDK6后一项重要的改进,HotSpot虚拟机开发团队在这个版本上花费了巨大的资源去实现各种锁优化。比如,自旋锁,自适应自旋锁,锁消除,锁膨胀,轻量级锁,偏向锁等。...
2.6.3 Java线程安全-JVM角度解析
Java线程安全-JVM角度解析 线程安全 当多个线程同时访问一个对象,如果不用考虑这些线程在运行环境下的调度和交替执行,也不需要考虑额外的同步,或者在调用方法时进行一些其他的协作,调用这个...