赞
踩
现在Java程序员面试都是因为没有丰富的工作经验和自己过硬的技术,所有都不知道一般互联网应该会问什么技术问题,加上自己可能去面试的时候没有准备的太充分,一面试刚跟面试官扯几个面试题就不知道自己在哪里了,被怼的体无完肤了,最后以灰头土脸的结束,所有针对这类的读者,我把几个群友大厂面试时候的经历和面试题整理出来,再次分享给广大的朋友们去参考,让你们更加的了解一线大厂都是问的什么问题。
面试专题分为四个部分,分别如下
Synchronized 相关问题
可重入锁 ReentrantLock 及其他显式锁相关问题
Java 线程池相关问题
Java 内存模型相关问题
问题一:Synchronized用过吗?其原理是什么?
问题二:你刚才提到获取对象的锁 ,这个“ 锁 ”到底是什么?如何确定对象的锁?
问题 三:什么是可重入性 , 为什么说Synchronized是可重入锁?
问题四:JVM对Java的原生锁做了哪些优化?
问题五:为什么说Synchronized是非公平锁?
问题六:什么是锁消除和锁粗化 ?
问题七:为什么说Synchronized是一个悲观锁?乐观锁的实现原理又是什么?什么是CAS,它有 什么特性?
问题八:乐观锁一定就是好的吗?
问题一: 跟 Synchronized 相 比 ,可重入锁ReentrantLock其实现原理有什么不同?
问题二:那么请谈谈AQS框架是怎么回事儿?
问题三:请尽可能详尽地对比下Synchronized 和 ReentrantLock的 异 同
问题四: ReentrantLock 是如何实现可重入性的?
问题五: 除了ReetrantLock,你还接触过JUC中的哪些并发工具?
问题六: 请谈谈ReadWriteLock 和 StampedLock。
问题七: 如何让Java的线程彼此同步?你了解过哪些同步器?请分别介绍下 。
问题八: CyclicBarrier 和 CountDownLatch 看起来很相似,请对比下呢?
问题一:Java中的线程池是如何实现的?
问题二:创建线程池的几个核心构造参数?
问题三:线程池中的线程是怎么创建的?是一开始就随着线程池的启动创建好的吗?
问题四:既然提到可以通过配置不同参数创建出不同的线程池,那么Java中默认实现好的线程池又 有哪些呢?请比较它们的异同 。
问题六:如何在Java线程池中提交线程?
问题一:什么是Java的内存模型,Java中各个线程是怎么彼此看到对方的变量的?
问题二:请谈谈volatile有什么特点,为什么它能保证变量对所有线程的可见性?
问题三:既然volatile能够保证线程间的变量可见性,是不是就意味着基于volatile变量的运算就是并 发安全的 ?
问题四:请对比下volatile对比Synchronized的异同
问题六:很多人都说要慎用ThreadLocal,谈谈你的理解,使用ThreadLocal需要注意些什么?
Java并发体系
多线程并发编程大纲
体系大纲是个人对知识的总结梳理,全程用的xmind手绘,不过文件不能上传,所以这里都是上传的图片形式,不过有原件
3.1.1 并发编程
1.概览
⒉进程与线程
3.Java线程
4.共享模型之管程
5.共享模型之内存
6.共享模型之无锁
7.共享模型之不可变
8.共享模型之工具
3.1.2 原理篇
指令级并行原理
CPU缓存结构原理
volatile l原理
final 原理
Monitor 原理
synchronized 原理
synchronized 原理进阶
wait notify l原理
join 原理
park unpark 原理
AQS 原理
ReentrantLock 原理
读写锁原理
Semaphore 原理
ConcurrentHashMap 原理
LinkedBlockingQueue 原理
ConcurrentLinkedQueue 原理
3.1.3 模式篇
同步模式之保护性暂停
同步模式之Balking
同步模式之顺序控制
异步模式之生产者/消费者
异步模式之工作线程
终止模式之两阶段终止模式
线程安全单例
享元模式
3.1.4 应用篇
效率
限制
互斥
同步和异步
缓存
分治统筹
定时
我想问下大家当初选择做程序员的初衷是什么?有思考过这个问题吗?高薪?热爱?
既然入了这行就应该知道,这个行业是靠本事吃饭的,你想要拿高薪没有问题,请好好磨练自己的技术,不要抱怨。有的人通过培训可以让自己成长,有些人可以通过自律强大的自学能力成长,如果你两者都不占,还怎么拿高薪?
架构师是很多程序员的职业目标,一个好的架构师是不愁所谓的35岁高龄门槛的,到了那个时候,照样大把的企业挖他。为什么很多人想进阿里巴巴,无非不是福利待遇好以及优质的人脉资源,这对个人职业发展是有非常大帮助的。
如果你也想成为一名好的架构师,那或许这份**Java核心架构笔记**你需要阅读阅读,希望能够对你的职业发展有所帮助。
中高级开发必知必会:
标,一个好的架构师是不愁所谓的35岁高龄门槛的,到了那个时候,照样大把的企业挖他。为什么很多人想进阿里巴巴,无非不是福利待遇好以及优质的人脉资源,这对个人职业发展是有非常大帮助的。
如果你也想成为一名好的架构师,那或许这份**Java核心架构笔记**你需要阅读阅读,希望能够对你的职业发展有所帮助。
中高级开发必知必会:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。