淘天Java后端开发25暑期实习技术终面面经
1.给我讲讲你的大学,我不太了解(md感觉我是被学历歧视了,面试官没听过我的学校
2.你讲讲你做过的最好的项目
3.你这个项目里用的WebSocket是什么技术啊,底层是基于TCP还是UDP啊
是基于TCP,但我当时离谱答错了,连自己项目的技术自己都不知道也是尴尬
4.UDP有什么好处呢,为什么UDP有这么多好处还要使用TCP呢
5.你大学里主修了什么课啊,看你学了机器学习,我们来点吧,机器学习的模型拟合效果都有什么指标啊?
我:完全大脑一片空白,本来也没好好学,想着水过去,但只蹦出了训练集拟合率,和测试集拟合率,艹,然后就被面试官狠狠嘲讽了
面试官:你再好好想想你们怎么评估模型啊
我:一堆东扯西扯,讲了一大堆名词糊弄过去了,但这些名词我也不知道什么意思,只记得好像考试考过
面试官:那你知道回归树和分类树的评估区别吗
我:完全不懂,但还是东扯西扯了一堆
面试官:那好叭,(笑了一下),我们本来是后端面试,怎么扯到机器学习去了,我们再回来吧
6.Java有哪些集合你说说吧,哪些集合是线程安全的啊
concurrentHashMap, hashTable, vector
7.你知道concurrentHashMap在JDK各个版本的底层实现有什么区别吗?
我完全不知道,只知道分段锁,面完查了一下
JDK1.7采用数组+链表的形式,采用分段锁对整个桶数组进行了分割分段(默认16个),每一把锁只锁容器一部分数据,多线程访问容器里不同数据段的数据,就不会存在锁竞争,提高并发访问率
JDK1.8数组+链表红黑树,摒弃了segment,直接sychronized + CAS来保证线程安全
8.equals和hashcode有什么关系
之前面试被问过,所以答出来了
9.分析以下输出
Integer a = 0
Integer b = 0
a.equals(b)
相等,因为重写了equals
a == b
我:不相等,因为是对象地址
面试官:你有自己测试过吗,确定吗,其实相等,你想想为什么
我:不会,回去查了下,发现是因为Java有常量池机制导致的
10.你知道Java里有几种异常吗
我:空指针异常,运行时异常
面:你有遇到过内存溢出吗
我:一般是无限递归才会出现吧
11.笑了一下,你老家是哪里的呀
我:老家是哈尔滨和武汉,现在住三亚
面:那你也算东北人
我:算是半个吧
面:那你为什么不打算留美工作啊
我:家里比较传统,不让我留在国外,我也不想留
后面又唠了几句家常
给你两道代码题吧
12.第一道:0,1矩阵求孤岛个数,BFS
13.第二道:Linux一长串Shell指令,让我用Java实现
但我Java语法忘了很多,问能不能用python,告诉我不可以
最后还是有一句话没写清楚,然后我用python写出来了
面:你为什么不会用Java写啊
我:最近刷题都在用python,Java有点手生
14.面:最后一个问题,你为什么笔试分那么低啊
我:我在北美要凌晨四点爬起来做笔试,实在没状态
面:好吧
15.我:给个评价?
面:感觉都还好吧
感觉虽然很多问题没答出来吧,但感觉这个面试官对我容忍度挺高的,面试体验还算可以,很多问题我解释了为什么不会也让我过了,希望能通过吧
#25届暑期实习##淘天二面##Java暑期实习##后端开发暑期##软件开发2024笔面经#