java开发一面凉经
11号投了,12号下午就约面试。。。太紧迫了
面试难度:对正常认真准备的同学来说应该是很基础的面试了,问的都是高频问题,没有涉及特别底层的原理
1. 自我介绍
2. 本科学过哪些课程? 数据结构,数据库,计网,os之类的
3. 数据结构是吧,说一下八个基本的数据结构 我说数组,链表,队列 栈然后就突然想不起来了 他说图 我又想起来二叉树 现在想想书上还写了堆和散列表
4.说一下数组和链表的区别
5.有哪些排序算法
6.说下选择排序和插入排序的原理 (说半天感觉他才理解我的意思 口语表达能力也很重要
7.然后好像开始问数据库了 我就开始不会了 先问
如果一个数据库索引数太多会导致什么问题 我说查询效率会低 他又问为什么 我说了一下因为需要先做查询计划,如果索引太多做计划的时间会变长然后查询就会慢
他问还有别的吗 我:不知道欸,,,
8.数据库主键索引和唯一索引的区别 我说主键不能改,他说还有吗,我:不道欸,,, 然后面试官补充说主键不能为null
9.第一第二第三范式 很简单 而且这已经是我第二次被问到这个问题了 我居然还是没答出来 绝了
10.然后他问我知不知道o什么什么(四个字母)的数据库 完全不知道
11.开始问java基础 问面向对象编程的特点 没有达到点上感觉 他说了封装继承多态
12. 说一下封装继承多态的原理 乱说了一堆
13.java的八个基本数据类型 靠 太紧张了 把string也说出来了 应该是byte 只能说庆幸没有把int说成Integer
14.说一下GC的垃圾回收算法 我看了垃圾回收的大概原理 但是不知道算法
15.说一下堆 栈 方法区存什么
16.垃圾回收主要针对的是哪一块
17.spring的ioc和aop了解吗 什么意思 我混乱叙述了一堆
18. 看我说不清楚aop 问什么情况下用aop 我说当你想不改源代码 然后又想增加业务组件和功能的时候 也不知道对不对,,
基本上是这些了 看到牛客有人说会问java基础 mysql 和spring的问题 就着重准备了这三部分 现在看来确实是按照这个思路问的 可惜准备的太仓促了,也不是很上心😥需要反思和进步的地方很多
面试官人倒是很耐心,也让我不要紧张,面试体验还算挺好的吧
结束了之后跟我说:你要加强一下哈! 算是凉了的说。。。
下次进步!希望这篇对需要的同学有帮助~