字节跳动社招Java面试分享

自我介绍。介绍自己的项目经历以及一些特长而不是简单自我介绍喜好等


Java基础

1、重载和重写的区别。

2、String StringBufferStringBuilder 的区别是什么?String 为什么是不可变的?

3、自动装箱与拆箱。

4、== equals

5、final 关键字。

6、Object类的常见方法。

7、Java 中的异常处理。

8、获取用键盘输入常用的的两种方法。

9、接口和抽象类的区别是什么。


JVM

1、Java 中会存在内存泄漏吗,简述一下?

2、描述一下 JVM 加载 Class 文件的原理机制?

3、什么是tomcat类加载机制?

4、类加载器双亲委派模型机制?

5、垃圾回收常见问题。

6、什么是GC? 为什么要有 GC

7、简述一下Java 垃圾回收机制?

8、如何判断一个对象是否存活?

9、垃圾回收的优点和原理,并考虑 2 种回收机制?

10、Java 中垃圾收集的方法有哪些?

11、讲讲你理解的性能评价及测试指标?

12、常用的性能优化方式有哪些?


集合框架

1、Arraylist LinkedList 异同。

2、ArrayList Vector 区别。

3、HashMap的底层实现。

4、HashMap Hashtable 的区别。

5、HashMap 的长度为什么是2的幂次方。

6、HashMap 多线程操作导致死循环问题。

7、HashSet HashMap 区别。

8、ConcurrentHashMap Hashtable 的区别。

9、ConcurrentHashMap线程安全的具体实现方式/底层具体实现。


多线程与并发

1、AQS 原理。

2、AQS 对资源的共享方式。

3、AQS底层使用了模板方法模式。

4、说一说自己对于 synchronized 关键字的了解。

5、说说自己是怎么使用 synchronized 关键字,在项目中用到了吗?

6、讲一下 synchronized 关键字的底层原理。

8、说说 JDK1.6 之后的synchronized 关键字底层做了哪些优化,可以详细介绍一下这些优化吗?

9、谈谈 synchronizedReenTrantLock 的区别。

10、说说 synchronized 关键字和 volatile 关键字的区别。

11、为什么要用线程池?

12、实现Runnable接口和Callable接口的区别。

13、执行execute()方法和submit()方法的区别是什么呢?

14、如何创建线程池。

15、介绍一下Atomic 原子类。

16、JUC 包中的原子类是哪4类?

17、讲讲 AtomicInteger 的使用。

18、能不能给我简单介绍一下 AtomicInteger 类的原理?

#面经##社招##字节跳动##Java工程师#
全部评论
楼主请问面试有没有手撕代码,还有一共几轮面试呀
点赞 回复
分享
发布于 2020-09-30 15:07
请问下,这个是社招几年经验的?
点赞 回复
分享
发布于 2020-10-01 14:15
阅文集团
校招火热招聘中
官网直投
???这咋比校招还简单...几年啊
点赞 回复
分享
发布于 2020-10-01 14:35
要是校招问这些就好了。
点赞 回复
分享
发布于 2020-10-02 16:18
假的吧这是
点赞 回复
分享
发布于 2020-10-19 14:09

相关推荐

11 104 评论
分享
牛客网
牛客企业服务