一面 30min左右
1、自我介绍
2、项目
面向b端和s端
登录---用户区分问题(几种登录)
3、C++和java区别
4、什么是面向对象----万物皆是对象,将业务实例抽象成对象,特征为对象的属性,行为为对象的方法
面向对象的三大特点---封装 继承 多态
具体说一下多态及其实现---继承+重写父类方法----父类的引用指向子类的对象
5、==和equal的区别
6、基本数据类型
byte short int long float double boolean char
类型: byte short int long float double boolean char
空间 : 1 2 4 8 4 8 1 2
用得最多的是byte---byte[]数组---io流文件输入输出经常用到(面试官说的)
7、String StringBuffer StringBuild区别
String---字符串----byte[]数组被final修饰,不可改
StringBuffer,StringBuild---字符串缓冲区----byte[]数组没有被final修饰,可数组扩容
Stringbuild--非线程安全 stringBuild---线程安全
8、集合---arraylist和linklist
arraylist---底层实现是数组----偏查询
linklist---底层实现是链表----偏插入删除等操作
数组优点:检索效率比较高
原因每个元素占用空间大小相同,内存地址是连续的,知道首元素内存地址,知道下标就可以通过数学表达式计算出元素的内存地址
缺点:随机增删效率比较低,但数组集合元素的添加一般向数组末尾添加元素,效率很高,不受影响
数组不能存储大数据量
用得最多的集合---ArrayList,检索效率快,添加效率快,末尾添加元素不影响效率,我们检索/查找某个元素的操作比较多
list集合特点:有序可重复,set无序不可重复,
map--key value,key特点同set集合
hashmap---数组----解决hash冲突-链表------链表节点>8 红黑树
---数组初始16---hash算法:key的hashcode和数组长度-1 15进行与操作---得到数组下标
---数组扩容--使用率达0.75---扩容一倍
9、mysql---查询效率
查询执行计划---explan+sql语句
查询类型、正在访问的表名、可能使用的索引(key)、实际使用的索引
table | type | possible_keys | key | key_len | ref | rows | Extra
mysql查询计划详解_萧萧雨歇的博客-CSDN博客_查询计划
10、 索引相关
二面 30min左右
1、自己的优缺点
2、研究生期间的科研场景
3、出现意见分歧如何做
4、适用环境能力,多久,到新环境怎么做
5、拿到新技术如何学习
结果:9月初二面,九月中询问了hr一次,在审核中,已经在走流程了,到现在未果,看结果还在池子里,目前已放弃。
总结:简历挺重要的,如果前期能把简历做好的话,尽量做得漂亮一点,前期的简历太拉了,信息量不够,如果是研究生的话,建议还是两页吧,一页能写的太少,我也是后面自我调整和反省,到九月底才做一个相对完善一点的简历,不然在公司最后综合筛选的时候,直观参考的东西就会相对弱势一些。
[注]一面是一位技术人员,二面貌似是两位领导,换着问,会根据你答的就这个问题继续追问,面试体验总体感觉挺好的,也是我之前特别期待的一家公司。