说要内推阿里的学长,替我整理好的Java面试题,分享给大家
就在我还在为双十一刷淘宝清购物车的时候,群里忽然弹出一条消息引起了我的注意:之前去了阿里的学长,在群里说要内推,我就迫不及待的问了下:具体的岗位需求是什么样的?
然后就有了接下来的聊天内容
当然看了看职位要求,再看看自己,觉得自己还是太菜了!对不起,我不配,还是安心搬砖吧。
不过最后,我还是厚颜无耻的让学长帮忙总结了下阿里的面试题以及复习资料,这里分享给大家!
常考的JVM面试题
1、JVM内存模型
2、JVM垃圾回收算法
3、JVM运行内存的分类
4、Java内存堆和栈区别
5、JVM垃圾收集器有哪些?以及优劣势比较?
6、GC回收机制
7、GC 标记对象的死活
8、MinorGC&FullGC
9、内存分配与回收策略
10、Java类加载机制
常考的多线程面试题
1、进程和线程的区别
2、线程安全的定义、线程的状态
3、多线程的实现方式(Runnable和Callable的区别)、start/run方法的区别
4、wait()/notify()/sleep()/yield()/join()几个方法的意义
5、notifyall()这块涉及到资源池和锁池,可以加深理解下
6、线程池的创建方式,7大参数、阻塞队列、拒绝策略、大小如何设置
7、锁机制:乐观锁CAS、悲观锁synchronized和ReentrantLock、实现原理以及区别,非常重要,基本每次必问,可以多掌握一些,看到源码层面,每次这块我都能给面试官说五到十分钟不停。
8、锁优化:偏向锁、轻量级锁、自旋锁、适应性自旋锁、锁消除、锁粗化等
9、Java内存模型和volatile的原理,以及volatile和synchronized区别
10、ThreadLocal线程本地存储原理,源码层面
11、内存泄漏问题
12、AQS同步队列器原理,CLH队列
13、AQS组件:ReentrantReadWriteLock、CountDownLatch、CyclicBarrier、Semaphore原理掌握
14、JUC原子类,原理:CAS+volatile + native方法来保证操作的原子性
15、集合框架的多线程实现类:CopyOnWriteArrayList、CopyOnWriteArraySet、ConcurrentHashMap、ConcurrentSkipListMap、ConcurrentSkipListSet、ArrayBlockingQueue、LinkedBlockingQueue、ConcurrentLinkedQueue、ConcurrentLinkedDeque
常考的数据库MySQL
1、手撕SQL语句
2、数据库事务、隔离级别、Innodb和Myisam的区别
3、锁机制(悲观锁、乐观锁、行锁表锁、独占锁共享锁等等)
4、MVCC、NK-Lock
5、索引的数据结构(B+树)、索引优缺点
6、最左前缀原则、索引优化
7、聚簇索引、覆盖索引
8、数据库三大范式
9、主从复制、主从一致、分库分表等等问题
常考的Redis缓存和MQ消息队列
1、Redis为什么要作为缓存? 高性能和高并发
2、redis和memcached的区别
3、redis常用数据结构、以及数据结构底层,常考到跳表的结构
4、定期删除、惰性删除
5、内存淘汰机制
6、持久化机制
7、缓存雪崩、缓存穿透、缓存击穿
8、并发竞争key问题
9、缓存和数据库双写时的数据一致性
10、为什么单线程还那么快?(非阻塞多路IO复用)
11、select、poll、epoll区别
12、五种 136dd IO模型
13、redis集群、哨兵机制
14、分布式锁
常问的是spring面试题
-
什么是Spring框架?Spring框架有哪些主要模块?
-
使用Spring框架有什么好处?
-
什么是控制反转(IOC)?什么是依赖注入?
-
请解释下Spring中的IOC?
-
BeanFactory和ApplicationContext有什么区别?
-
将Spring配置到你的应用中共有几种方法?
-
什么基于XML的配置?
-
什么基Java的配置?
-
怎样用注解的方式配置Spring?
-
描述Spring Bean的生命周期?
-
描述Spring中各种Bean的范围?
-
什么是Spring的嵌入beans?
-
Spring框架中的单例bean是否是线程安全的?
-
请举例说明如何用Spring注入一个Java的集合类?
-
请举例说明如何在Spring的Bean中注入一个java.util.Properties?
-
请解释Spring的Bean的自动生成原理?
-
请辨析自动生成Bean之间模块的区别?
-
如何开启基于基于注解的自动写入?
最后
当然整理的面试题还有很多,文章中就不多做分析,我特意建了群,把文档资料上传到了群文件和网盘
资料领取:戳这里免费领取,暗号:CSDN
资料领取:戳这里免费领取,暗号:CSDN
听说一键三连的粉丝都面试成功了?如果本篇博客对你有帮助,请支持下博主哦
- Java安全之RMI反序列化
- Java中final修饰的方法是否可以被重写
- 基于springboot的文件上传
- JavaWeb Cookie
- JavaWeb HttpSession
- 【内存溢出系列】OutOfMemoryError:Java heap space(1/8)
- 使用java + selenium + OpenCV破解腾讯防水墙滑动验证码
- java安全编码指南之:文件和共享目录的安全性
- java 实现跳表(skiplist)及论文解读
- 浅析Java反序列化漏洞议题
- JVM详解(一)-- JVM与Java体系结构
- java安全编码指南之:序列化Serialization
- Java命令学习系列(一)——Jps
- Java命令学习系列(二)——Jstack
- 深入理解Java中的重写和重载
- 深入理解Java中的组合和继承
- 2016年排名Top 100的Java类库——在分析了47,251个依赖之后得出的结论
- Spring中的Controller ,Service,Dao是不是线程安全的?
- java线程池拒绝策略使用实践
- Cause: java.sql.SQLException: Unknown initial character set index '255' received from server.