大家的面经都看的足够多了吗?下面要给大家分享一个JAVA字节跳动面经,里面包含了面试题。
是第一次面试,面试的岗位是Java后台开发实习。
具体面试题:
1、HashMap实现原理是怎样的?
HashMap的实现原理:
(1)用key的hashCode重新hash计算出当前对象的元素在数组中的下标
(2)存储时,如果出现hash值相同的key,此时有两种情况。(1)如果key相同,则覆盖原始值;(2)如果key不同(出现冲突),则将当前的key-value放入链表中
(3)获取时,直接找到hash值对应的下标,在进一步判断key是否相同,从而找到对应值。
(4)理解了以上过程就不难明白HashMap是如何解决hash冲突的问题,核心就是使用了数组的存储方式,然后将冲突的key的对象放入链表中,一旦发现冲突就在链表中做进一步的对比。
2、TreeMap实现原理是怎眼的?
3、哈希冲突
4、Mysql基本数据类型有哪些?
MySQL的数据类型包括数字类型、时间与日期类型、字符串类型、空间数据类型等.....。
5、Mysql存储过程是怎样的?
6、HTTP协议
7、TCP三次握手,四次挥手(经常出现这个)
8、TCP和UDP的区别是什么?
TCP与UDP的区别:
(1)基于连接与无连接;
(2)对系统资源的要求(TCP较多,UDP少);
(3)UDP程序结构较简单;
(4)流模式与数据报模式 ;
(5)TCP保证数据正确性,UDP可能丢包,TCP保证数据顺序,UDP不保证。
9、HTTP状态码
10、锁
11、synchronized用法
12、TCP如何保证可靠连接?
13、常见的哪些数据结构?
体验:
因为是第一次面试,所以感觉有点紧张,面试官非常的好。
记住,面试的时候一定要冷静!
以上就是全部的面试题介绍啦!更多的java相关面试题整理,请关注本站了解吧!