这次!我把字节跳动第二期的Java面试参考手册搞到手了,真香
金九银十跳槽季,这是一个千年不变的话题,每到这个时候,很多人都会临阵磨枪,相信不快也光。于是,大家都会搜集一些面试题。
但其实,对于一些不跳槽的同学来说,真的也很有必要去研读一些大厂的面试题。了解一下最近的主流技术,看看大厂在意的点是什么,再在自己的工作中去完善,去总结。
于是,我去拜访了一位老友,现在是字节跳动三轮面试官(部门内招聘第三面大多都是让他去面),交谈了许久,讨到了一份最新的Java岗的面试参考手册!(PS:其实面试官也经常不知道问啥,也是会看一些文档上面的问题来选择性的去提问)
字节跳动Java岗面试参考手册(第二版)
下面我们来看一下这份面试参考手册的一些细则和提问的点,由于文章的篇幅限制,内容无法一一展示出来,文章下面有完整版的获取方式(免费)
Java 基础
- Java 的8种基本数据类型 装箱 拆箱
- Concurrent 包
- 面向对象
- String StringBuffer StringBuilder hashcode equ
- Java文件读取
- Java反射
- JDK NDK JRE JNI
- Static 和final的区别
- Session和COOKIE
集合类 Set
- HashMap
- CurrentHashMap
- Hashtable
- hashtable和hashmap的区别
- HashMap和ConCurrentHashMap区别
- ConcurrentHashMap和HashTable区别
- linkedHashMap
- Linkedhashmap 与hashmap 的区别
- HashSet
- hashmap 与hashset 区别
- Collections.sort 内部原理
- 迭代器 Iterator Enumeration
- LIST ArrayList,LinkedList 和Vector 的区别和实现原理
- 快速失败(fail-fast)和安全失败(fail-safe)
锁 volatile synchronized Lock ReentrantLock AQS CAS
- volatile 和 synchronized 实现原理
- Volatile 与 synchronized 区别
- Synchronized 原理
- CAS
- ReentrantLock 和 synchronized 区别
Java 多线程
- 如何创建线程?哪种好?
- 线程状态
- 一般线程和守护线程的区别
- sleep wait yield notify notifyAll join
- 中断线程
- 多线程如何避兔死锁
- 多线程的好处以及问题
- 多线程共用一个数据变量注意什么?
- 线程通信方式
- 线程池
- 线程中抛出异常怎么办
Java内存模型和垃圾回收
- 什么是 JMM 内存模型?(JMM 和内存区域划分不是一回事)
- 内存分区
- GC算法(YGC and FGC)
- 内存泄露
- 内存泄露的案例分析jm 调优
- Jstat jmap jps jinfo jconsole
- JVM参数设置
- 内存分配与回收策略
- 面试问题
JUC 包
- JUC 概况
- Tools
- Queue
- 线程池工作原理
- 线程池分类
- 线程池底层实现类ThreadPoolExecutor类
- 线程池状态
设计模式
- 什么是设计模式
- 设计模式六大原则
- Java 动态代理
数据结构
- 直接插入排序
- 希尔排序
- 冒泡排序
- 快速排序
- 直接选择排序
- 堆排序
- 归并排序
- 基数排序
- 二分查找树
- LRU 实现
数据库
- 索引B树B+树
- innoDB 与MylSAM引擎区别
- 事务隔离级别(恶果:脏读幻读不可重复读)
- 数据库特性ACID
- sql
- 数据库范式
- 数据库连接池
- DDL DML DCLexplain
- explain
- 分库分表
- 数据库锁
- 其它问题
网络
- HTTP 请求报文& HTTP响应报文
- HTTP 报文头部请求头和响应头
- HTTP 请求方法
- HTTP 请求过程
- Get和Post区别
- HTTP 状态码
- HTTP 长连接短连接
- HTTP协议是无状态什么时候用长连接,短连接?
- HTTP1.1 与HTTP1.0 的区别
- HTTP2.0 与 HTTP1.0 的区别
- 转发与重定向的区别
- TCP头部
- TCP与UDP区别
- TCP三次握手
- TCP四次挥手
- TCP粘包问题Nagle算法
- TCP如何保证可靠性传输
- TCP流量控制拥塞控制
- 滑动窗口机制
- TCP状态转移
- TIME_WAIT 和 CLOSE_WAIT
- OSI七层
- APR
- ICMP协议
- DNCP协议
- RARP协议
- 路由选择协议OSPF RIP
- SNMP
- SMTP
- IP
- 网络攻击
- DNS 浏览器中输入URL到页面加载的发生了什么
- HTTPS SSL
操作系统
- 进程线程区别
- 进程通信方式
- 僵尸进程
- 进程同步PV信号量
- 死锁避免-银行家算法
- 死锁避免-安全序列
- 同步 异步 阻塞 非阻塞
- 操作系统CPU 调度算法
- 内存管理方式(页存储 段存储 段页存储)
- 页面置换算法
- IO种类IO的原理
- selectepoll
- 物理地址 虚拟地址 逻辑地址