java数据结构
文章平均质量分 79
车猫君
沉默着,走了有,多遥远;
抬起头,忽然间,才发现;
展开
-
谈谈对类的加载以及反射原理的理解
引言 本文创作的目的在于论述类加载和反射原理的大致逻辑过程。以帮助更好的去理解Java类的运行和方法的实现。 类的加载 Java虚拟机对类的加载用了三句话来表述。 一、通过一个类的全类名来获取类对应的二进制字节码文件。 二、将静态的数据结构转化为运行时数据结构。 三、生成对应的Java.lang.class对象 这三句话是我的理解下的主要意思。毕竟是借鉴大家从英文翻译过来的。下面来逐一解释说明每一句话。 第一句话,首先明确的是,一个全类名对应着唯一的一个二进制字节码文件,所谓的二进制字节码就是按一定顺序排列原创 2020-08-14 11:32:05 · 141 阅读 · 0 评论 -
浅谈Executor逻辑架构和运行原理
引言 内容主要介绍,这个框架的构成及运行逻辑,再细化到每一个分部的运行逻辑,不涉及代码和源码,个人觉得,介绍底层逻辑的时候,贴代码和源码来解释说明的都是对于初学者都是耍流氓。把这个东西的逻辑浅显易懂的讲明白后,别人看起源码理解起来轻松许多的同时,还各有各的感悟,这才是分析学习的良好方式。 Executor架构 简单来理解就是一个任务调度器,其架构分为三个部分。 一、任务的产生 所谓任务,就是一个实现了,Runnable接口或者Callable接口的类的对象。这两者的区别在于实现Runnable接口没有返回值原创 2020-08-07 15:02:52 · 184 阅读 · 0 评论 -
浅谈Java线程池的逻辑架构原理
引言 本文创作于对于线程池有一些基础的了解,但镜花水月,模模糊糊不是那么了解的同行者。用通俗易懂的话语谈谈我对线程池的一个认知和了解。在此暂不介绍Executor整个并发框架结构,仅介绍 线程池的数据结构 一个较为完成的线程池初始化由7大参数组成。new TheadPoolExeuctor(七大参数),七大参数顺序结构排序如下,核心线程数,最大线程数,任务进入线程的等待时间,等待时间的单位(秒/毫秒/等),一个同步队列,一个默认的生产线程的工厂,和拒绝策略。 七大参数详解 我把整个线程池比作一个团,与众不同原创 2020-08-07 09:24:02 · 245 阅读 · 0 评论 -
浅谈ConcurrentMap的原理逻辑和hashMap及hashTable的对比分析
** 浅谈ConcurrentMap的原理逻辑和hashMap及hashTable的对比分析 ** 本文不想从源码去分析底层实现的原理,都能看懂源码了,也没有必要在这儿听我聊什么蛇皮。创作目的是为了用通俗易懂的语言让初学者了解这条路的大致方向,也就是其主要的逻辑结构原理,让初学者从源码角度学习分析的时候少走弯路。 ##ConcurrentMap的底层结构 ConcurrenMapt的存储是基于数组加链表,这点和hashMap、hashTable的存储原理是一样的。简单来说就是HashEntry[]数组存储原创 2020-08-05 16:52:24 · 278 阅读 · 0 评论