小米2025java研发一面 (~严重怀疑是不是被刷kpi了 ┭┮﹏┭┮)

今天早上8点起来,刚看了半个多小时八股文,小米那边就打了电话过来说下午有时间面试吗,然后就西路糊涂的下午开始面试了。简历是3月18号投的。 ┭┮﹏┭┮ O.o


面试时长30分钟

1.自我介绍

2 八股文(问的不是很多就几个 ┭┮﹏┭┮)


2.1 虚拟机内存结构

我: jvm由三部分组成:1.类加载子系统:可以根据指定的全限定名类加载类和接口。2.执行引擎:执行那些在被载入类的方法的指令。3.运行时的数据区:当程序运行是jvm会存储许多内容并进行计算,而运行数据区分为:程序计数器,虚拟机栈,本地方法栈(私有),堆,方法区(共有)

面试官: 能细说一下堆分为哪些结构

我:老年代,新生代,永久代,然后我回答了一下jvm的垃圾回收机制

面试官:你知道有哪些垃圾收回器吗

我:G1,cms

面试官 能细聊一下G1吗(这里没去了解过 ┭┮﹏┭┮)


2.2 面向对象的三大特点

我: 封装,继承,多态,举例回答了一下


2.3 知道mysql的范式吗 (┭┮﹏┭┮ 这个基础题没去了解过 我真该死啊!!)


2.4 mysql的索引有哪些

我:索引一般有B+tree,Btree,hash索引等,然后主要回答了一下他们的区别和优缺点

面试官:树的高度跟磁盘IO操作有什么关联,为什么高度越高IO次数就越多

我:树往往是用来存储数据的,树的一个节点往往对应着一个磁盘块,节点中可以存放数据,也可以存放指针(指针的指向就是节点对应的数据在磁盘中的位置),往往遍历获取树中数据的时候,我们就要与磁盘进行IO(读写操作),而树的深度越深,那对应的节点不就越多,遍历时进行的IO操作也就越多。


2.5HTTP是的通信过程

我: 客户端发送请求数据时,会先进行摘要算法进行计算,计算出哈希值,然后通过非对称或对称加密对哈希值进行加密,然后发送到服务端,服务端会先对内容进行计算出哈希值,并对传输过来的哈希值解密,然后进行对比看是否一致,一致就返回消息或数据,不一致的话报错,因为传输的数据可能被篡改了。

面试官:非对称加密时客户端是用私钥加密还是公钥

我:公钥加密,私钥解密。这个目的是为了保证内容传输的安全,因为被公钥加密的内容,其他人是无法解密的,只有持有私钥的人,才能解密出实际的内容;私钥加密,公钥解密。这个目的是为了保证消息不会被冒充,因为私钥是不可泄露的,如果公钥能正常解密出私钥加密的内容,就能证明这个消息是来源于持有私钥身份的人发送的。


算法题:1.回文数2.链表反转 (几分钟就写完了)


刚刚小米那边打了电话过来说一面通过了,看今晚有没有时间进行二面 (今天小米那边是集中面,我今天面了三场了 ┭┮﹏┭┮ ),心太累了。就回答了今天没时间了,不知道能不能换个时间面(然后那边就说好挂了电话),不知道会不会因为我的回答而不让我二面吧, ┭┮﹏┭┮ 我哭死!!!


0个评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
鱼友7987
下载 APP