![](https://img-blog.csdnimg.cn/20210904185503766.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java 面试内容整理收录【高级】
文章平均质量分 69
收录整理的信息,均为本人和朋友被面试时问到的高频知识点,特做整理,以供同为Java开发的你借鉴,希望给正在找工作的你提供帮助。
图图学Java
程序员大军中普通的一员,心血来潮偶尔写几篇文章,基本都是原创,欢迎大家阅读,希望给与你帮助。
展开
-
Java 基础篇之线程池
Java 基础篇之线程池线程池的主要工作流程是什么?核心代码:ThreadPoolExecutor类public void execute(Runnable command) { //如果任务为null,抛出空指针异常 if (command == null) throw new NullPointerException(); /* * Proceed in 3 steps: * * 1. If few原创 2021-09-06 00:48:51 · 177 阅读 · 0 评论 -
java 并发开发之AQS
java 并发开发之AQSAQS 是什么,有什么作用?① 是什么:AQS 是抽象队列同步器,AQS定义了一套多线程访问共享资源的同步器框架,许多同步类实现都依赖它② 有什么作用:为Java的并发同步组件提供统一的底层支持,ReentrantLock、Semaphore、CountDownLatch等AQS 的原理AQS 的实现依赖FIFO双向队列(CLH队列锁的变体)和 volatile的state变量(共享资源状态)如果当前线程竞争失败,AQS会把当前线程及等待信息(Node节点)原创 2021-09-05 22:21:02 · 191 阅读 · 0 评论 -
Java 基础篇之ConcurrentHashMap
Java 基础篇之 ConcurrentHashMapjdk1.7和jdk1.8的ConcurrentHashMap底层数据结构jdk1.7:由一个Segment数组和多个HashEntry组成Segment数组就是将一个大的table分割成多个小的table来进行加锁(分段锁思想,继承ReentrantLock),而每一个Segment元素存储的时HashEntry数组。jdk1.8:废弃了Segment,采用Node数组+链表+红黑树的数据结构来实现jdk1.7和jdk1.原创 2021-09-05 21:00:50 · 233 阅读 · 0 评论 -
Java 基础篇之Java HashMap
Java 基础篇之 Java HashMapjdk1.7 和 jdk1.8 的HashMap的底层数据结构jdk1.7:数组、链表jdk1.8:数组、链表、红黑树数组的特点:查询的效率高,插入、删除的效率低链表的特点:查询的效率低,插入、删除的效率高HashMap 使用两者的结构,使得查询和插入、删除效率都很高,jdk1.8引入红黑树解决链表过长效率低的问题。????思考:为什么初始不使用红黑树?(空间和时间的考虑)HashMap 的初始容量,加载因子初始容量:16加载因子:原创 2021-09-04 21:58:46 · 159 阅读 · 0 评论 -
Java 基础篇之Java String
Java 基础篇之Java String三大核心特性① 不变性:是一个immutable模式的对象,不变模式的主要作用是当一个对象被多线程共享并频繁访问时,保证数据的一致性。immutable模式:是一种持久化数据,一旦创建就不会被修改,修改也直接返回新的immutable,原数据不会发生变化。原理:因为深拷贝对性能的消耗太大了(用到了递归,逐层拷贝每个节点),但当你使用immutable数据的时候只会拷贝你改变的节点,从而达到了节省性能。② 常量池优化:String对象创建之后,会在字符原创 2021-09-04 18:51:41 · 99 阅读 · 0 评论 -
JVM 内存结构
第一章 JVM相关知识点第一节 JVM内存结构原创 2021-03-04 22:13:22 · 258 阅读 · 1 评论 -
知识结构
废话不多说,开始学习旅程吧!第一章 JVM原创 2021-03-04 11:49:26 · 125 阅读 · 2 评论