OPPO公司整体给人感觉很大气,流程很清晰,提前批现场面,第一天一面,晚上出结果,第二天二面+HR面,同样晚上出结果,过了就是第三天现场签约。我面的是java开发岗。
一面
早上去的,提前一个小时到的,先签到先面试,这点很人性化,等了半个小时不到就面了。
面试官人很好,问的问题也很基础,没有可以刁难。
(1)object类有哪些方法?各是什么意思?
(2)java的特性。继承封装多态,多态讲一讲静态多态和动态多态就行。
(3)重写过哪些方法??
(4)sleep和wait方法区别?可以从属于哪个类,使用方法和应用场景说。
(5)tcp三次握手和四次挥手过程。
(6)拥塞控制机制讲一下。
(7)数据结构二叉树有哪些遍历方式。
(8)平衡树有哪些?B树和B+树的区别,可以从数据库底层讲一讲。
(9)java int类型数据范围,这个一开始有点蒙,也就是整型数的范围。
(10)-1在机器内怎么表示?补码,全1。为什么呢?也就是计算机为什么使用补码?其实就是为了方便机器运算,使用补码可以让机器只做加法,就使用一种计数器就行了,硬件上就使用一种电路。比如1-1=0,这里是减法,1+(-1)=0,就是加法了。
(11)手写SQL,就是一个连接查询,没写出来,太久了忘了。
(12)hashcode的返回值是什么?String类怎么重写hashcode的?
(13)平时有什么校园实践和活动?一面问这个?可能觉得我技术不行,问点其他的吧?
(14)自己的优缺点?
(15)平时用java吗,为什么选择java?平时用的少,喜欢java的完全面向对象。后面加强学习。
一面完了晚上出结果,通知第二天上午二面。
二面
早上面试的,二面面试官应该是项目组负责人。二面主要针对简历上的项目展开。
(1)简历上最近做的是哪个项目?
(2)你负责哪块?
(3)数据怎么传送和加密,我的项目是基于网络传输和加解密的,所以问了网络协议、tcp、udp、对称加密和非对称加密等。面试官问我非对称加密除了用在密