![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
文章平均质量分 70
fyq2016
一个工地搬砖的
展开
-
Class.forName VS ClassLoader.loadClass
Class.forName VS ClassLoader.loadClass1、Class.forName 特点Class.forName有两个重载有类名、是否初始化、classLoader只有类名只有类名的,实际上表现同有1,是否初始化字段默认为true,classLoader是调用者的classLoader是否初始化:置为false时,不会进行初始化操作,也就不会执行静态代码块classLoader:指定classLoader,不一定非要是调用者的classLoaderClass.f原创 2021-04-22 13:36:36 · 215 阅读 · 0 评论 -
ConcurrentHashMap
ConcurrentHashMap看ConcurrentHashMap,需要先了解HashMapConcurrentHashMap和HashMap相同的地方:数组长度都是2的n次幂Node结构都相同hash值都是原hash值高低位异或的结果ConcurrentHashMap和HashMap不同的地方:数组初始长度:带容量c造器下,Concurrent要运算 c*1.5+1,可避免扩容key不能为空ConcurrentHashMap的hash值的符号位一定是0,拒绝负数负载因子只有在原创 2021-03-30 16:49:15 · 132 阅读 · 0 评论 -
JAVA的HashMap
HashMap前置知识点:Hash:将输入转换成一个数字有几个特点:多次调用,结果相同散列,很少的改动,都要尽可能的造成很大的结果波动,避免根据结果的变化来反推源输入高效HashMap的数据是怎么保存的?数组+链表+红黑树HashMap的几个字段:table:存放数据的数组(Node数组)负载因子:map的size超过(必须要超过,等于的时候也不扩容)数组长度*负载因子后,就要进行扩容table的size一定是2的n次幂,因为求余效率高,(-1再与即可)Node有以下四个字原创 2021-03-28 12:28:30 · 63 阅读 · 0 评论 -
JAVA线程池备忘录
JAVA线程池备忘录线城池的实现线程池的参数说明自带的rejectedExecutionHandler线城池的实现JAVA中,JDK自带的线程池实现类是java.util.concurrent.ThreadPoolExecutor直接创建这个类的实例即可创建一个线程池线程池的参数说明ThreadPoolExecutor有很多个构造函数,都是围绕着以下6个参数来变的corePoo...原创 2020-04-20 10:54:52 · 120 阅读 · 0 评论 -
JVM内存模型
JVM内存模型JVM内存模型各内存保存的数据栈内存溢出JVM内存模型各内存保存的数据方法区方法区保存的是方法执行的具体操作栈栈保存的是方法的执行、基本类型的数据、堆内存的地址堆所有分配的对象程序计数器程序执行顺序的记录,此内存很小本地方法栈此处保存的是操作系统的原生函数栈内存溢出若栈内存溢出,会出现StackOverflowError,若调用栈太长,就容易出现此异...原创 2019-11-16 13:39:02 · 109 阅读 · 0 评论