华资(2020春季校招,岗位:Java开发实习生(2021届))
1.一轮笔试(70min):包括30min的综合测试题和40min的专业测试题(具体的题目当时忘了拍下来了)
2.二轮笔试(30min)
- 作为java工程师,当你遇到OutOfMemoryError:java heap space异常,你想到的问题成因有哪?你会使用哪些工具或手段,如何进行问题排查分析和成因。
- 阅读以下代码,回答问题
class Person{
public Person(){
System.out.println("this is a Person");
}
public void print(){
System.out.println("I'm a Person");
}
}
public class Teacher extends Person{
public Teacher(){
System.out.println("this is a teacher");
}
public void print(){
System.out.println("I'm a teacher");
}
public static void main(String[] args) {
Person person=new Teacher();
}
}
(1)执行main函数 输出结果是怎样的?为什么?
(2)若在main函数末尾加上person.print();输出结果是怎样的?为什么?
- java多线程可以通过几种方法创建线程?他们有什么区别?在多线程编程中synchronized关键字有什么用途?
- 在Web登录界面输入用户名和密码,并点击“登录”完成登录操作。整个过程中从前台页面到后端服务器,再到数据库等环节,都有哪些操作?请写出能想到的相关的流程和处理的内容。
3.一面(70min)
- mybatis的一级缓存和二级缓存
- mysql的哪些操作会刷新缓存
- 设计模式中的单例模式和抽象工厂模式
- java的反射机制
- 平时的学习方法是什么?
- 接下来的学习路线是什么?
- 在学校做课程设计的时候,你担任的是组员还是组长的角色,如果是组长,你会怎么合理分工?
- 平时有写博客的习惯吗?一般写博客你是用什么思路写的,请描述一下你最近写的一篇博客
- 讲社团经历的一个场景,你学到了什么?
- 假设现在你和组长负责公司的一个项目,客户要求两天后必须提交成品,可是你们的项目还没有完成,组长这两天也有事外出了,你会怎么做?
- 期望的薪资是多少?
- (面试官还问到了一些关于java基础的细节,有点模糊记不太清就不在这里列举了!)
4.技术面(60min)
-
mysql的三大范式
-
谈谈你对java的final关键字的理解
-
平时有用lombok吗,你评价一下这个插件
-
自定义注解应该如何实现
-
关于用户和角色,你会怎么进行设计(包括数据库表的设计以及实体类的设计)
-
了解docker技术吗?
-
谈谈你对maven的理解
-
项目一般的打包方式是什么?jar包和war包的区别是什么?
-
如果你将一个项目打包成jar包,这个jar包很大,你会从哪方面进行排查导致jar包占用内存大的原因所在
-
你有部署过项目到远程服务器上吗,通过什么方式进行部署的?
-
Linux的常用命令
-
谈谈你最熟悉的设计模式,它在JDK源码的体现
-
写接口通过什么工具进行调试
-
还有使用过其它公司的SDK吗?
-
谈谈你对前后端分离的理解
-
谈谈你对于restful风格的认识
-
你认为在今后学习微服务的过程中,可能会遇到什么困难
-
以下是针对我的仿天猫鞋店商城项目提出的问题
①关于订单编号,是怎么实现的
②支付这一块的功能怎么实现
③通过什么技术实现用户认证