什么是RPC? 优点:将功能解耦,性能稍高,可扩展性和可维护性,高可用(负载均衡,自动重试)缺点:复杂,运维难度大,跨平台/语言调用麻烦 代码目...
双重检测为什么加volatile关键字:主要作用是为了防止指令重排序。新生成一个对象的正确顺序:1、分配对象内存 2、内存中初始化一个对象 3、...
Java源码中给出了5中状态: New:新new出的一个线程对象,还没有调用run方法; Runnable: 可运行状态,线程可能在运行,也可能...
因为在很多并发代码里看到下面这种形式的代码,对join方法理解不是很清晰,所以在讲解线程池之前先对join方法进行一个简单的记录: 先看一下jo...
HashMap 哈希桶+链表+数据结构(红黑树,Java8以后)O(1)的平均插入,查找,删除时间复杂度致命缺陷是hash碰撞哈希算法:先计算h...
首先,我们回顾一下Java Collection体系的核心约定: equals: 自发的,对称的,传递的,一致性的(不会一会相等一会不相等) h...
fail-fast机制:Iterator的concurrentModifiedException 在迭代器生成后一边读取一边修改就会出现这个问题...
类加载的过程: 加载,链接(验证,准备,解析),初始化loadClass只做到了加载。 Java中的类加载器包括四类: BootstrapCla...
forName() forName() 是Class类的方法 Returns the {@code Class} object associat...