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 · 247 阅读 · 0 评论 -
java 并发开发之AQS
java 并发开发之AQS AQS 是什么,有什么作用? ① 是什么:AQS 是抽象队列同步器,AQS定义了一套多线程访问共享资源的同步器框架,许多同步类实现都依赖它 ② 有什么作用:为Java的并发同步组件提供统一的底层支持,ReentrantLock、Semaphore、CountDownLatch等 AQS 的原理 AQS 的实现依赖FIFO双向队列(CLH队列锁的变体)和 volatile的state变量(共享资源状态) 如果当前线程竞争失败,AQS会把当前线程及等待信息(Node节点)原创 2021-09-05 22:21:02 · 313 阅读 · 0 评论 -
Java 基础篇之ConcurrentHashMap
Java 基础篇之 ConcurrentHashMap jdk1.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 · 321 阅读 · 0 评论 -
Java 基础篇之Java HashMap
Java 基础篇之 Java HashMap jdk1.7 和 jdk1.8 的HashMap的底层数据结构 jdk1.7:数组、链表 jdk1.8:数组、链表、红黑树 数组的特点:查询的效率高,插入、删除的效率低 链表的特点:查询的效率低,插入、删除的效率高 HashMap 使用两者的结构,使得查询和插入、删除效率都很高,jdk1.8引入红黑树解决链表过长效率低的问题。 ????思考:为什么初始不使用红黑树?(空间和时间的考虑) HashMap 的初始容量,加载因子 初始容量:16 加载因子:原创 2021-09-04 21:58:46 · 217 阅读 · 0 评论 -
Java 基础篇之Java String
Java 基础篇之Java String 三大核心特性 ① 不变性:是一个immutable模式的对象,不变模式的主要作用是当一个对象被多线程共享并频繁访问时,保证数据的一致性。 immutable模式:是一种持久化数据,一旦创建就不会被修改,修改也直接返回新的immutable,原数据不会发生变化。 原理:因为深拷贝对性能的消耗太大了(用到了递归,逐层拷贝每个节点),但当你使用immutable数据的时候只会拷贝你改变的节点,从而达到了节省性能。 ② 常量池优化:String对象创建之后,会在字符原创 2021-09-04 18:51:41 · 160 阅读 · 0 评论 -
JVM 内存结构
第一章 JVM相关知识点 第一节 JVM内存结构原创 2021-03-04 22:13:22 · 362 阅读 · 1 评论 -
知识结构
废话不多说,开始学习旅程吧! 第一章 JVM原创 2021-03-04 11:49:26 · 219 阅读 · 2 评论
分享