211硕士,现在研二,刚刚结束了字节Java开发的一面,整个过程将java的互联网常用技术栈问了一个遍,自己准备的不太充分,感觉不太理想,面经如下:
1.自我介绍
2.做过什么项目吗?说一下项目的核心需求,做的过程中有什么难点,核心的技术实现。说了将近20分钟
3.java中Object类中有哪些方法,他们的作用分别是什么?
4.java中的多态的含义?jvm中栈和堆的区别?
5.java常用的会抛出哪些异常类型?
6.spring 的事务,传播方式?
7.sql入侵?如何防止sql侵入
8.数据库事务的隔离级别?
9.说一下redis,redis是用来干什么的?redis如何做缓存
10.消息队列说一下
11.sql的索引是什么,常见的索引方式,什么时候索引失效?什么数据库引擎使用的是红黑树作为索引?
12.http请求行的各个字段及含义,发生重定向时返回的状态码是多少?正常是多少?
13.http和https的区别?
14.说一下应用层常用的几个协议?
15.linux用户权限最大的是谁?root与普通用户之间转换的指令?
16.如何找到一个进程并杀死他?
17.进程和线程的区别?
18.都用过哪几种数据库?
19.场景题:实验室内需要做一个管理系统,现在需要你实现一个登陆功能,怎么做?
20.session了解吗?有没有从这个角度去考虑过登陆的设计问题?
21.算法:两个有序的且元素唯一的数组,找出交集?
22.反问:通过这次面试交流您觉得我应该在哪方面进行提升?答:除了java基础不错,其他的技术栈掌握的一般,由于缺乏项目实践,登陆设计的稀碎。。。。
全部评论
(9) 回帖