第 1 章 课程概述
1、大厂面试题
蚂蚁花呗一面(一个小时):
-
Java容器有哪些?哪些是同步容器,哪些是并发容器?
-
ArayList和LinkedList的插入和访问的时间复杂度?
-
java反射原理,注解原理?
-
新生代分为几个区?使用什么算法进行垃圾回收?为什么使用这个算法?
-
HashMap在什么情况下会扩容,或者有哪些操作会导致扩容?
-
HashMap push方法的执行过程?
-
HashMap检测到hash冲突后,将元素插入在链表的末尾还是开头?
-
1.8还采用了红黑树,讲讲红黑树的特性,为什么人家一定要用红黑树而不是AVL、B树之类的?
-
https和http区别,有没有用过其他安全传输手段?
-
线程池的工作原理,几个重要参数,然后给了具体几个参数分析线程池会怎么做,最后问阻
塞队列的作用是什么?
-
linux怎么查看系统负载情况?
-
请详细描述springmvc处理请求全流程?
-
spring一个bean装配的过程?
-
讲一讲AtomicInteger,为什么要用CAS而不是synchronized?
美团一面经验
- 最近做的比较熟悉的项目是哪个,画一下项目技术架构图
- JVM老年代和新生代的比例?·YGC和FGC发生的具体场景?
- jstack.jmap.jul分别的意义?如何线上排查JVM的相关问题?
- 线程池的构造类的方法的5个参数的具体意义?
- 单机上一个线程池正在处理服务如果忽然断电怎么办(正在处理和阻塞队列里的请求怎么处理)?
- 使用无界阻塞队列会出现什么问题?
- 接口如何处理重复请求?
百度面试题
- hashmap hastable 底层实现什么区别?hashtable和concurrenthashtable呢?
- hashmap和treemap什么区别?底层数据结构是什么?
- 线程池用过吗?都有什么参数?底层如何实现的?
- synchronized和Lock什么区别?synchronized什么情况情况是对象锁?什么时候是全局锁为什么?
- ThrealdLocal 是什么底层如何实现?写一个例子呗?
- volitile的工作原理?
- cas知道吗如何实现的?
- 请用至少四种写法写一个单例模式?
- 请介绍一下JVW内存模型??用过什么垃圾回收器都说说呗
- 线上发送频繁Full GC如何处理?CPU使用率过高怎么办?
- 如何定位问题?如何解决说一下解决思路和处理方法
- 知道字节码吗?字节码都有哪些?Integer x=5,int y =5,比较x=y都经过哪些步骤?
- 讲讲类加载机制呗,都有哪些类加载器,这些类加载器都加载哪些文件?
- 手写一下类加载Demo,知道osgi吗?他是如何实现的???
- 请问你做过哪些TVW优化?使用什么方法达到什么效果???
- classforlame(“java.lang.String”)和String classgetClassloader() LoadClass(“java.lang.String”)什么区别啊?
今日头条
- HashMap如果一直put元素会怎么样?hashcode全都相同如何?
- AppicationContex的初始化过程?
- GC用什么收集器?收集的过程如何?哪些部分可以作为GC Roots?
- Volatile 关键字,指令重排序有什么意义?s/nchronied怎么用?
- 并发包里的原子类有哪些,怎么实现?cas在CPU级别用什么指令实现
- Redis数据结构有哪些?如何实观sorted set?这种数据结构在极端情况树?
- MySql索引提什么数据结构?B tree有什么特点?优点是什么?
- 慢查询怎么优化?
- 项目:cache,各部分职责,有哪些优化点
京东金融面试
- Dubbo超时重试;Dubbo超时时间设置
- 如何保障请求执行顺序
- 分布式率务与分布式锁(扣款不要出现负数)
- 分布式session设置
- 执行某操作,前50次成功,第51次失败:a)全部回滚b)前50次提交第51次抛异常,a)b)场景分别如何设置Spring(传播特性)
- Zookeeper利部些作用
- JVM内存模型
- 数据库重直和水平拆分
- MyBais如何分页;如何设置缓存;MySQL分页
美团面试题汇总
一轮技术面
一、jvm相关
- 对象在jvm中是怎么存储的?
- 对象头信息里面有哪些东西?
- jvm内部如何划分?常量池在哪里?
- 写一段小程序使栈溢出,堆溢出?
二、GC
- GCRoot如何确定,哪些对象可以作为GC Root?
- GC如何分代的?每代用什么算法回收?
- CMS过程是怎样的?内部使用什么算法做垃圾回收?
分代垃圾回收过程?
三、并发相关
- java中有哪几种锁?
- synchronized内部原理?
- ReentrantLock内部实现?
- HashMap,Hashtable,ConcurrentHashlap区别?内部实现?
- 原子类内部如何实现的?
- ArrayBlockingQueue和LinkedBlockingQueue内部如何实现?
- 四、数据库相关
- innoDB索引数据结构?
- BTree B+Tree区别?为什么使用B+Tree?
五、算法
- 写程序判断一棵树是不是完全对称的二叉树?
- 写程序判断两颗二又树是不是相同?
六、其他
- Comparable和Comparator区别?
- 内存溢出和内存泄露分别指什么?
二轮技术面(这轮面试全程懵逼-好多问题记不清了)
一、项目介绍
二、开源架构
RocketMQ?设计介绍?
三轮技术面
一、项目介绍二、开源框架
- dubbo如何提供服务?有机器宿掉怎么检测出来?如何找到服务?
- zk如何管理服务和配置的?
- tair与redis 有什么区别?
- redis是单例的吗?
- mysql的整体架构是怎样的?
- innodb索引?
- innodb 主键索引和非主键索引区别?
了解java的nio吗?
三、基础
- Hashlap与concurrentlHashMlap比较?
- 介绍一下java多线程?
- 线程间如何通信?
四、项目管理
- 项目开发流程?
- 如何推动了解整个项目情况?
蚂蚁金服电话二面
- 自我介绍、工作经历、技术栈
- 项目中你学到了什么技术?(把三项目具体描述了很久)
- 微服务划分的粒度
- 微服务的高可用怎么保证的?
- 常用的负载均衡,该怎么用,你能说下吗?
- 网关能够为后端服务带来哪些好处?
- Spring Bean 的生命周期
- HashSet 是不是线程安全的?为什么不是线程安全的?
- Java中有哪些线程安全的Map?
- Concurrenthashmap 是怎么做到线程安全的?
- HashTable你了解过吗?
- 如何保证线程安全问题?
- synchronized、lock
- volatile 的原子性问题?为什么i++这种不支持原子性?从计算机原理的设计来讲下不能保证原子性的原因
- happens before 原理cas 操作
- lock 和synchronized的区别?
- 公平锁和非公平锁Java 读写锁
- 读写锁设计主要解决什么问题?