字节跳动一面:
-
JVM的组成;
-
多态的实现;
-
内部类为何可以访问外部类对象的属性及方法;
-
HashMap的源码Redis dictht源码分析、存放数据时发现正在扩容会怎么样:
-
如何判断SQL语句用到了哪些锁;
-
MySQL索引的类型;
-
Redis V.S. Memcached;
-
MySQL主从复制的方式,
-
CAS原理、含义、底层实现、存在的问题;
-
项目相关问题;
-
手撕算法:变形的二分查找。
字节跳动二面:
-
B树什么时候的高度会变高;
-
数据库隔离级别、索引、RR隔离级别下的SQL查询结果;
-
多进程与多线程模式的区别;
-
守护进程、僵尸进程、 孤儿进程,如何创建守护进程;
-
一次HTTP请求涉及的网络协议及全过程;
-
手撕算法:系统用户在线峰值及持续时间统计。
字节跳动三面:
-
Java存在内存溢出的现象吗,内存的分配方式、GC机制;
-
final、finally fialize 的区别与用法;
-
设计模式之单例模式;
-
Java的反射、含义、使用、底层实现;
-
悲观锁、乐观锁在数据库、Java中的实现;
-
TCP拥塞控制原理;
-
time-wait连接过多的原理如何解决;
-
手撕算法:子串匹配问题。
字节跳动四面:
-
项目介绍;
-
请介绍一下你了解的源码;
-
手撕算法:三面手撕算法变形(未能想出最优解,还是太菜了) ;
-
系统设计。
关注微信公众号【编程技匠】