圆你的大厂梦!字节跳动Java高频面试题真题:一/二/三面+常见问题

目录

  • 技术一面(算法)
  • 技术二面
  • 技术三面
  • JAVA开发技术面试中可能问到的问题
  • 面试注意点

一、字节跳动技术一面(算法)

  1. Java 的 16 进制与字符串的相互转换函数
  2. JAVA 时间格式化处理
  3. 将毫秒转化为日期
  4. 文本的倒序输出
  5. 判断一个数字是奇数还是偶数
  6. 用Hibernate 实现分页
  7. 35 选 7 彩票程序
  8. 获取 GMT8 时间
  9. 中文乱码转换
  10. 小标签
  11. Big5 字与 Unicode 的互换
  12. 取得服务器当前的各种具体时间
  13. 用半角的特殊符号代替全角的特殊符号
  14. 数组和数组之间的转换代码
  15. 从资源文件里读取值的类
  16. 一个随机类
  17. 计算传入值是否星期六
  18. 转换文件大小
  19. Java 日期格式化及其使用例子
  20. Java几个常用方法
  21. 判断字符是否属于中文
  22. 去掉字符串中重复的子字符串
  23. 将指定 byte 数组以 16 进制的形式打印到控制台
  24. 获得任意一个整数的阶乘,递归
  25. 拷贝一个目录或者文件到指定路径下
  26. 简单的 txt 转换 xml
  27. 字母排序(A-Z)(先大写,后小写)
  28. 列出某文件夹及其子文件夹下面的文件,并可根据扩展名过滤
  29. 字符串匹配的算法

二、字节跳动技术二面

  1. List和Set比较,各自的子类比较
  2. HashMap和ConcurrentHashMap的区别
  3. HashTable和ConcurrentHashMap的区别
  4. String,StringBuffer和StringBuilder的区别
  5. wait和sleep的区别
  6. JVM的内存结构
  7. 强引用,软引用和弱引用的区别
  8. 数组在内存中如何分配
  9. Spring MVC的核心是什么,请求的流程是怎么处理的,控制反转怎么实现的
  10. Mybatis如何处理结果集
  11. Java的多态表现在哪里
  12. 接口有什么用
  13. 说说http,https协议
  14. 说说tcp/ip协议族
  15. tcp五层网络协议
  16. TCP与UDP的区别
  17. cookie和session的区别,分布式环境怎么保存用户状态
  18. BIO、NIO和AIO的区别
  19. Java中常说的堆和栈,分别是什么数据结构;另外,为什么要分为堆和栈来存储数据
  20. 为什么要用线程池
  21. MySQL优化经验
  22. 悲观锁和乐观锁的区别,怎么实现
  23. 什么是线程死锁?死锁如何产生?如何避免线程死锁?
  24. notify和notifyAll区别
  25. 谈一谈对MySQL InnoDB的认识
  26. 谈一谈数据库事务的隔离级别?
  27. MySQL主备同步的基本原理
  28. 类在虚拟机中的加载过程
  29. 强引用、软引用、弱引用、虚引用与GC的关系
  30. 请写一段栈溢出、堆溢出的代码

三、字节跳动技术三面

  1. 说一下spring中Bean的作用域
  2. 说一下spring中Bean的生命周期
  3. 对Spring中依赖注入两种方式的认识
  4. Spring框架中都用到了哪些设计模式?
  5. BeanFactory 和ApplicationContext的区别
  6. 数据库的三大范式
  7. TCP和UDP的区别及其适用场景
  8. 说一下Spring的核心模块
  9. (转发)forward与(重定向)redirect的区别
  10. redis常用的五种数据类型
  11. 内部类和静态内部类的区别
  12. 非静态内部类中的变量和方法不能声明为静态的原因
  13. String,StringBuilder,StringBuffer的区别
  14. 集合和数组之间的相互转换
  15. 面向对象的特征有哪些方面?
  16. 概括的解释下线程的几种状态
  17. Java集合类里面基本的接口有哪些
  18. Iterator和ListIterator的区别
  19. Enumeration和Iterator的区别
  20. 介绍一下HTTP的响应结构
  21. final、finalize和finally各自的作用
  22. 说一下你了解的几种进程间的通信方式

四、JAVA开发技术面试中可能问到的问题

1. 基础知识

  • 集合类:List和Set比较,各自的子类比较(ArrayList,Vector,LinkedList;HashSet,TreeSet);
  • HashMap的底层实现,之后会问ConcurrentHashMap的底层实现;
  • 如何实现HashMap顺序存储:可以参考LinkedHashMap的底层实现;
  • HashTable和ConcurrentHashMap的区别;
  • String,StringBuffer和StringBuilder的区别;
  • Object的方法有哪些:比如有wait方法,为什么会有;
  • wait和sleep的区别,必须理解;
  • JVM的内存结构,JVM的算法;
  • 强引用,软引用和弱引用的区别;
  • 数组在内存中如何分配;
  • 用过哪些设计模式,手写一个(除单例);
  • springmvc的核心是什么,请求的流程是怎么处理的,控制反转怎么实现的;
  • spring里面的aop的原理是什么;
  • mybatis如何处理结果集:反射,建议看看源码;
  • java的多态表现在哪里;
  • 接口有什么用;
  • 说说http,https协议;
  • tcp/ip协议簇;
  • osi五层网络协议;
  • tcp,udp区别;
  • 用过哪些加密算法:对称加密,非对称加密算法;
  • 说说tcp三次握手,四次挥手;
  • cookie和session的区别,分布式环境怎么保存用户状态;
  • git,svn区别;
  • 请写一段栈溢出、堆溢出的代码;
  • ThreadLocal可以用来共享数据吗;

2. IO

  • bio,nio,aio的区别;
  • nio框架:dubbo的实现原理;
  • 京东内部的jsf是使用的什么协议通讯:可参见dubbo的协议;

3. 算法

  • java中常说的堆和栈,分别是什么数据结构;另外,为什么要分为堆和栈来存储数据。
  • TreeMap如何插入数据:二叉树的左旋,右旋,双旋;
  • 一个排序之后的数组,插入数据,可以使用什么方法?答:二分法;问:时间复杂度是多少?
  • 平衡二叉树的时间复杂度;
  • Hash算法和二叉树算法分别什么时候用;
  • 图的广度优先算法和深度优先算法:详见jvm中垃圾回收实现;

4. 多线程

  • 说说阻塞队列的实现:可以参考ArrayBlockingQueue的底层实现(锁和同步都行);
  • 进程通讯的方式:消息队列,共享内存,信号量,socket通讯等;
  • 用过并发包的哪些类;
  • 什么地方用了多线程;
  • Excutors可以产生哪些线程池;
  • 为什么要用线程池;
  • volatile关键字的用法:使多线程中的变量可见;

5. 数据库相关(MySQL)

  • MySQL优化经验:
  • MySQL的语句优化,使用什么工具;
  • MySQL的索引分类:B+,hash;什么情况用什么索引;
  • MySQL的存储引擎有哪些,区别是什么;
  • 说说事务的特性和隔离级别;
  • 悲观锁和乐观锁的区别,怎么实现;

6. Mq

  • mq的原理是什么:有点大。。都可以说;
  • mq如何保证实时性;
  • mq的持久化是怎么做的;

7. Redis

  • redis和memcache的区别;
  • 用redis做过什么;
  • redis是如何持久化的:rdb和aof;
  • redis集群如何同步;
  • redis的数据添加过程是怎样的:哈希槽;
  • redis的淘汰策略有哪些;
  • redis有哪些数据结构;

8. Zookeeper

  • zookeeper是什么;
  • zookeeper哪里用到;
  • zookeeper的选主过程;
  • zookeeper集群之间如何通讯;
  • 你们的zookeeper的节点加密是用的什么方式;
  • 分布式锁的实现过程;

9. Linux

  • linux常用的命令有哪些;
  • 如何获取java进程的pid;
  • 如何获取某个进程的网络端口号;
  • 如何实时打印日志;
  • 如何统计某个字符串行数;

五、面试注意点

  1. 至少定出2天的准备时间
  2. 一定得再次阅读公司的职位要求
  3. 在刷题前,先准备项目描述的说辞
  4. 一定得准备项目描述里提到的技术
  5. 一定得准备亮点话题,并想办法往这方面绕,而且亮点话题多多益善
  6. 时间多,再去刷题
  7. 面试题,通过准备让面试官感觉你软实力也行

写在最后:

冷静的思维,点亮智慧的殿堂;
抽象的理念,交汇灵感的火花;
平凡的字符,串起别样的精彩;
细腻的语言,盘活冰冷的程序;
非凡的才华,开启幸福的天地。

# 链接 Java程序员福利"常用资料分享"

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,163评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,301评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,089评论 0 352
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,093评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,110评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,079评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,005评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,840评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,278评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,497评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,667评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,394评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,980评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,628评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,796评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,649评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,548评论 2 352