一面有两个面试官,一个问 java 一个问其他基础知识
一开始是自我介绍然后也没怎么问项目
Java 方面:
说一下你知道的 Java 8 新特性
Java8 中 JVM 运行时数据区
说一下 Java 方法执行的过程,说详细一点。(说到栈帧由局部变量表,操作数栈,动态链
接,方法出口组成,他还让我说再详细一点,最好说到字节码的级别,就只随便扯了扯。实
在是不会啊......)
Java 的集合常用什么?一般在什么场景下用到?
LinkedHashmap 的实现,如何实现的
Hashmap 扩容机制,为什么 hashmap 定义时一般初始化一个大小?
Java 并发:
实际写代码哪里用到过并发嘛(诚实的说没有)
写一个两个线程死锁的案例,或者表述一下
volatile 的底层实现,如何防止指令重排
线程有哪些状态,说一下,并且说一下这些状态之间如何转移。
线程池用过吗?说一下四种常用线程池。
基础知识:
数据结构:
树结构的好处是什么,平时有用到哪些
bst 和 avl 树有什么区别
求无向图中的连通分量(不用写代码,说下思路)
数据库:
事务的 ACID 特性
事务隔离级别,解决什么问题
Innodb 的索引数据结构,回表机制,和 mysiam 的区别
Redis 了解吗,说一下 redis 的基本数据类型和底层实现(我说不太了解,但还是说了一下基
本的,他就没继续问了)
网络:
osi 七层模型
Tcp 为什么稳定
算法题手撕代码:判断二叉树是否是 bst
海量数据,查找重复单词(比如有很多文件,找出在这些文件中出现次数最多的单词,怎么
做?)
上一题说到字典树,尝试实现下字典树的数据结构并且尝试建立一个字典树。
全部评论
(2) 回帖