自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (1)
  • 收藏
  • 关注

原创 ThreadPoolExecutor 源码解析二

1.FutureTask类解析

2021-06-17 16:09:37 131

原创 ThreadPoolExecutor 源码解析一

1. 构造函数解析1. 参数解析:corePoolSize :

2021-06-14 11:48:32 139

原创 spring getBean()方法解析概述

getBean(beanName) 整体概述1.transformedBeanName(name)将bean的别名(alias)解析成真正的beanName 截取&beanName中&字符,获得beanName2.getSingleton(beanName) 从缓存中获取bean,有三个缓存集合,循环依赖会有单章讲解。singletonObjects :缓存已经初始化完成的bean对象 earlySingletonObjects : 循环引用中,提前暴露的bean对象

2021-06-10 10:22:17 1980

原创 Spring refresh初步解析

注:spring版本:5.2;本spring系类不涉及xml任何配置1.refresh()方法整体概述 public void refresh() throws BeansException, IllegalStateException { synchronized (this.startupShutdownMonitor) { // Prepare this context for refreshing. //容器刷新前的准备工作 prepareRefresh

2021-06-03 11:23:18 397

原创 spring启动与源码概述

注:spring版本:5.2;本spring系类不涉及xml1.启动代码AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(AnnotationConfig.class);2.AnnotationConfigApplicationContext.构造方法解析 public AnnotationConfigApplicationContext(Class<?&gt

2021-05-23 00:16:52 78

原创 HashMap源码分析(初始化/添加)

HashMap的整体构成,数组+链表+红黑树(一种自平衡树),jdk1.8后加入红黑树进行优化。源码分析:1.初始化:new HashMap<>(); //默认加载因子值:当数组空间达到75%,要对数组进行扩容 static final float DEFAULT_LOAD_FACTOR = 0.75f; //加载因子变量 final ...

2019-12-04 10:30:53 329

原创 集合ArrayList源码解析

ArrayList是常用的集合类,底层所使用的是数组。其特点相对数组来说可以动态扩充。构造函数方法:List<T> list = new ArrayList<>();List<E> list2 = new ArrayList<>(16); //常量,一个空的Object数组 private static final ...

2019-11-13 09:54:48 185

原创 基于字节码分析try/catch/finally执行流程

程序示例:public class TestTryCatchFinally { public static void main(String[] args) { System.out.println(testReturn()); } private static int testReturn() { int i = 1; ...

2019-10-05 11:58:00 173

原创 JVM之类加载与初始化篇三(线程上下文类加载器和SPI机制)

说明:如果一个类由类加载器A加载,那么这个类依赖的类也是由相同的类加载器尝试加载。(依赖类没有被加载过)问题:java对数据库连接只提供了一套规范,也就是接口类。具体的实现有各个厂商提供。java.sql.*中的所有类都位于rt.jar包下,由启动类加载器加载。而具体的实现类一般都是位于classpath下,应当由系统类加载器加载。那么我们使用接口类中的API时,如何加载接口类的具体实现?(...

2019-08-31 20:17:19 332

原创 JVM之类加载与初始化篇二(加载 / 自定义加载器)

JVM类加载器:1.jvm虚拟机自带的加载器。1).根类加载器(Bootstrap),对应系统属性sun.boot.class.path,由C++实现;2).扩展类加载器(Extension),对应系统属性java.ext.dirs,由java语言提供的类加载器,是ClassLoader类的子类;3).系统(应用)类加载器(system),对应系统属性java.class.p...

2019-08-25 18:53:50 1065

原创 JVM之类加载与初始化篇一(初始化)

JVM中类加载和初始化的说明:在java代码中,类型的加载、连接、初始化过程都是在运行期完成的。1.加载:查找并加载类的二进制数据,具体来说,是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区中,让后在内存中创建一个java.lang.Class对象(jvm规范并未规定Class对象位于哪里,HotSpot虚拟机将其放在了方法区中)用来封装类在方法区中的数...

2019-07-29 21:13:45 240

dom4j.rar=dom4j API+dom4j.jar

dom4j.rar 包括dom4j API帮助文档和dom4j.jar包.dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的。dom4j是一个十分优秀的JavaXML API,具有性能优异、功能强大和极其易使用的特点

2018-05-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除