Java基础
文章平均质量分 57
Java基础
Kelvin____
博客大多源于自己的想法,或是学习的总结。欢迎指正讨论。
展开
-
线程池——参数、状态、拒绝策略、execute()相关源码浅析
文章目录线程池线程池参数四种拒绝策略线程池的五种状态(待补充)线程池execute相关方法源码浅析execute()——添加任务addWorker()——worker初始化(可以简单理解为线程初始化?)runWorker()——每个线程时如何执行queue里的任务的getTask()——keepAliveTime参数时如何运作的 线程池 线程池参数 Creates a new ThreadPoolExecutor with the given initial parameters. Params: cor原创 2021-08-09 23:57:49 · 324 阅读 · 0 评论 -
HashMap笔记及少量源码注释
为什么HashMap的容量是2的次方数 优化模除运算 // jdk 1.8 // 扰动 static final int hash(Object key) { int h; return (key == null) ? 0 : (h = key.hashCode()) ^ (h >>> 16); } // 取模 (n - 1) & hash HashMap在1.7与1.8中的区别 1.7是头插,1.8是尾插 1.8优化了hash算法 resize()逻原创 2021-07-25 22:05:43 · 183 阅读 · 1 评论 -
Java基础——克隆、浅拷贝、深拷贝、数组的浅拷贝方法Arrays.copyOf()
克隆 拷贝与克隆 拷贝 此时,变量dogA和dogB指向着同一个对象,任何一个变量改变都会影响另一个变量 Dog dogA = new Dod() Dog dogB = dogA; 克隆 浅拷贝:默认的克隆操作是“浅拷贝”,浅拷贝并没有克隆对象中引用的其他对象 package com.kelvin.clone_test; public class Student implements Cloneable{ // 需要实现标记接口Cloneable才可以用Clone方法 String原创 2021-06-25 21:33:48 · 367 阅读 · 0 评论 -
Java基础——反射
文章目录反射几种获取[类对象]的方式每个类的Class对象是唯一(单例)的Code通过Class对象实例化对象反射获取类的字段 反射 几种获取[类对象]的方式 e.getClass() Class.forName("PackageName.ClassName") Employee.class 每个类的Class对象是唯一(单例)的 虚拟机会为每个类型管理一个唯一的Class对象。因此,可以利用==运算符实现两个类对象的比较(p200) Code package com.kelvin.reflect原创 2021-01-26 00:13:52 · 104 阅读 · 0 评论