字节 抖音直播客户端 一面面经

记错时间,迟到了十分钟,万幸面试官跟HR人都很好。

面试时间:一个小时

流程:

自我介绍

之前接触过客户端吗?没接触过。

Java基础:

介绍面向对象的特征。封装,继承,多态

在项目中有具体使用过多态吗?重写方法

接口和抽象类的区别

介绍类加载机制

泛型解决了什么问题,上下界了解吗?没了解过。擦除呢?没了解过。

数据结构的源码了解吗?ArrayList和LinkedList的区别

HashMap的底层实现,为什么要用红黑树,如何解决哈希冲突

LinkedHashMap的底层实现,为什么要使用双向链表

Hashtable了解吗?和ConcurrentHashMap有什么区别?

线程池了解吗?有哪些参数?有没有自己使用过线程池?答的根据任务类型确定核心线程数,追问为什么要这么设置

Synchronized锁了解吗?它是可重入的吗?怎么实现?锁的升级了解吗?

介绍JVM的内存结构

GC了解吗?说了一大堆,包括怎么确定回收对象,垃圾回收算法,垃圾回收器。追问为什么要从引用计数法演变为使用可达性分析算法?不知道。

老年代里采用什么垃圾回收算法?答的是由垃圾回收器决定,后续说了CMS,面试官换了个问题,问标记清除算法和停时复制算法的优缺点;追问哪个的内存效率高一点

OS:

进程和线程的区别

线程间如何通信,答的信号量,面试官说这属于被动同步,有没有什么主动的方法?答了管道,不知道对不对

volatile关键字解决什么问题

操作系统里面怎么保证CAS操作的原子性?没答上来

计网

HTTP的状态码了解吗?

HTTP跟HTTPS有什么区别

TCP、IP分别在哪一层;三次握手和四次挥手能不能少一次?如果不行的话会出现什么问题?

TCP的滑动窗口工作过程。有点忘了

TLS的握手过程,使用了哪些加密算法?只知道一个RSA。能用对称加密算法吗?为什么不行

输入网址到出现网页的过程

八股告一段落,问我最近在看什么书。

手撕:找到数组中右边第一个比他大的数的下标。单调栈。

反问:面试表现怎么样?主要业务?

面试感受:面完感觉很好,答不上来时面试官会给一些提示,如果实在不会才换问题。面完发消息给HR,回复说已通过。许愿二面过

10.14 更新 二面已通过

面试时长:一个小时

流程:

自我介绍

接触过Kotlin吗?鸿蒙呢? 全都不了解 后面就问八股了

1.面向对象的三个特征。继承和组合有啥区别,什么时候用继承,什么时候用组合?

2.用过哪些数据结构?HashSet的底层实现?HashMap的底层实现?为什么要用红黑树?你觉得还有优化空间吗?

3.排序算法。快排是最快的吗?什么时候它最快。

4.线程与进程的区别。线程之间如何相互调用。对共享资源进行访问如何保证并发安全。死锁的原理。

5.介绍下GC。进程在GC的时候线程处于什么状态?回答了会被kill,问为什么这么设计?回答可能会导致内存泄漏,也不知道对不对。

6.介绍设计模式。代理模式的使用场景,解决了什么问题。

7.TCP跟UDP的区别。HTTP基于哪个。回答3.0基于UDP,问为什么要采用QUIC协议。

8.HTTPS跟HTTP的区别,怎么保证安全性的。证书泄露了会导致安全问题吗?

9.开放性问题,假设我是一个客户端的一个程序,然后我要加载出一个图片,这个图片加载怎么能让它的效率最高?

10.手撕 有序数组合并 很简单。

面试感受:面试官会根据你的回答进行追问,且比较喜欢问场景题,有些答得不好。没想到面完之后马上通过了,这周五三面,攒攒好运

#软件开发笔面经#
全部评论
佬,你收到的面试邮件就写的抖音直播客户端嘛?
点赞 回复 分享
发布于 09-27 11:22 四川
问了好多八股呀,没有问项目吗
点赞 回复 分享
发布于 09-30 16:27 广东
佬,现在什么进度?
点赞 回复 分享
发布于 10-01 06:52 广东
佬,二面过了吗
点赞 回复 分享
发布于 10-09 10:59 上海
佬base哪里呀
点赞 回复 分享
发布于 10-13 21:17 浙江

相关推荐

7 49 评论
分享
牛客网
牛客企业服务