本篇博客将记录本人校园招聘面试中遇到面试题。当然,这些都是个人的总结,不具有权威性。大家可以是当做是一种建议。
大数据岗位面试题整理:https://blog.csdn.net/qq_41127332/article/details/83653836
1.什么是秋招?
秋招是秋季校园招聘,时间主要是9-12月;秋招针对的是应届毕业生,可以让学生低门槛的踏入企业。秋招期间,是高校宣讲会和招聘会的高峰期,也是是找工作的最好时间,毕业生在秋招找到理想的工作,能把第二个学期用来准备毕业论文、自我提升等等。强烈建议大家在秋招搏一搏,这是你的绝佳机会,因为等你毕业进公司那就需要很高的门槛。
流程:宣讲会-->笔试or线上笔试-->技术面-->复试-->人事面-->发offer,谈薪资。宣讲会的信息可以去985,211名校中的就业信息网站上查找,会标注好时间,地点等信息。
1.好看的简历。包含了你的个人技能,大学里的奖学金及获奖信息,自我评价,所修课程,项目经历等等。
2.扎实的基础知识。在java方面,面试官问的最多的就是基础知识,包括:java基础,数据库,数据结构,设计模式,操作系统,web基础....。框架部分基本不问,问了也不会太深入,所以基础是最重要的。下面我将整理我面试遇到的问题,仅供参考。
3.几个自己写过的项目。
...
2.整理
技术面时,面试官有时会抓住一个问题不断深入的盘问你,直到你不会才会换下一个。时间一般在30~90分钟.
java基础:
jvm内存模型?(非常重要)
知道gc吗?知道full gc吗?jvm清理内存有哪些方式?你调过jvm的哪些参数?那内存溢出会报什么错?你怎么来查找内存溢出的原因?(非常重要)
HashMap的底层原理?还可以用什么实现?什么是红黑树?红黑树插入数据的时间复杂度?ConCurrentHashMap了解过吗?
对象创建有哪几种方式?
Java的反射原理?
给一个数字数组,其中有一系列的学生成绩,要将所有不及格的学生成绩移除,要求时间复杂度O(n).
StringBuffer和StringBuilder的不同?
线程创建有哪几种方式?线程池有哪些关键参数?
socket怎么使用?能说说三次握手、四次挥手吗?在项目里你是怎么把数据从前端传到后端的?数据传送时你加密了吗,后端怎么解密?
list怎么实现排序?
什么是jms?
访问数组有哪几种方式?
jdk1.8新特性?
类的加载机制?可以自己写一个类加载器吗?是双向还是单向的?
Unicode与utf-8之间的关系?
volatile关键字是用来做什么的?其原理是什么?一般用来做什么?为什么不在每个变量上都加volatile?
在Java下如果在get的大小限制内要实现传输图片要怎么做?
怎样实现四则运算(1+2*(3-1))?那怎么判断式子非法?如果我只输入()呢?
使用两个线程输出”ABABABAB”,要保证输出的次序,你会怎么做?
xml和json的区别?配置过连接池吗,配置了哪些?你用过jdbc的哪些对象?jdbc多线程机制?
== 与 equals的区别?
String a = new String("123"); 创建了几个对象?
static和final的区别?
重定向(redirect)和内部转发(forward)的区别?
什么是mvc?画图解释下mvc?
数据库:
怎么优化大量数据的查询?索引什么时候会失效?
你用过这么多数据库,它们有什么共同点?为什么会有这些共同点?oracle有哪些索引?oracle有哪些对象?oracle和mysql的区别?redis是什么?redis可以用来做什么?redis和oracle怎么结合使用?mongodb可以用来做什么?
什么是存储过程?什么是游标?存储过程和事务的区别?项目中你在哪里用到了事务?
oracle怎么分页?
nosql的全称?
数据结构:
怎么从100万条数据里取前100个最小的(堆排序)?
链表和数组的区别?
用两个栈实现队列?
合并两个有序的链表?
归并排序稳定吗?手写下快速排序?快速排序为什么不稳定?
队列和栈的区别?可以用来做什么?
设计模式:
什么是抽象工厂模式?什么是代理模式?
手写下装饰者模式?手写下单例模式?
web基础:
http和https的区别?
Http和Tcp的关系?Tcp和Udp的区别?
http2.0了解过吗?
get和post的区别?post真的不限制传输数据大小吗?
servlet多线程机制?
ajax的原理?
nginx可以用来干什么?
操作系统:
你会哪些系统?linux有哪几种版本?你用过linux的哪些命令?怎么查看linux的内存信息?怎么查看linux的进程?
进程之间通信的方式?
怎么避免产生死锁?
框架部分:
springmvc的运行原理?spring原理?
什么是分布式?为什么用dubbo?dubbo可以用来做什么?
什么是微服务?你用spring boot做过什么?springboot的原理?
hiberate了解过吗?为什么你用mybatis?
mybatis的$和#的区别?
其他:
项目中遇到的最大的问题是什么(必问)?你这个项目用到了哪些主流技术?你的数据库为什么这么设计?
你是怎么使用git来进行主分支和分支的管理的?
安卓四大组件是什么?你写过哪些安卓的demo?
service是运行在主线程还是子线程?可以用来做复杂运算吗?启动service有哪几种方式?启动activity有哪几种方式?
zookeeper可以用来干什么?spark是什么?