第一面

辞职后第一次面试,记录下面试题,查缺补漏。

1、最近在做什么项目?在项目中担当什么角色?

2、java的特性,继承,多态,封装。更深层次的理解,问了我一个为什么使用封装?我答似乎不是他想要的答案

3、String是对象引用吗?我说是,懵逼!然后他说那我String a="abc"是吗?我说不是,因为"abc"是放在字符常量区,然后他就是你既然知道还说是,我。。。

4、集合的结构。集合的区别

5、内存泄漏,例如数据库没有关闭的连接,IO流没有释放,解释是对堆栈的理解

6、Spring除了IOC和AOP还有什么?

7、Spring的注入方式

8、Spring的加载过程

9、Spring Boot的启动原理

10、SpringMVC的请求过程,SpringMVC的一些注解解释

11、谈谈自己对restful的理解

12、 .properties原理,继承HashTable

13、jsp的加载过程

14、js选择器有哪些?

15、js的底层结构

16、平时用的jquery有哪些方法?

17、ajax Js原理

18、除了http协议,还使用了哪些协议,面试官说了socket,还有一个不记得了

19、知道webserver吗?

20、平时使用线程吗?什么场景下使用?

21、线程冲突怎么解决?这里我是这样说的:是指线程安全方面吗?可以使用synchronized关键字,还有volatile字段修饰,然后他说阻塞怎么办呢?出一道题,假如十张票有一百个人抢,你怎么保证把票买出去?

我第一想法肯定是synchronized修饰,但是感觉他不想要这个答案,我就问为什么会出现阻塞(个人感觉很逗比),他说synchronized修饰就会出现阻塞啊,然后我说是因为一直占着资源不放吗?那可以通过lock()和unlock(),因为lock锁是乐观锁,lock会检测资源时否冲突,冲突则会一直请求,不冲突就占用,然后他露出了满意的笑容(这段真是有惊无险啊,我应该一开始就说出来的)

22、知道什么设计原则?我说是工厂模式吗?反正我不是很懂,就随便问,他说不是,然后问我知道开/闭原则吗?我说知道,就说什么对外开放,对内闭合,但是他说你知道这些,你知道关键点在哪里吗?我懵了,我说是修改吗?他又说但是具体的使用场景呢?你们在开发的时候有用过吗?然后我就卡壳了,我努力想了很久,说是指写好一个类然后尽量不去修改吗?然后使用继承去扩展它,他恩了一下,继续说那你知道单一设计原则吗?我赶紧点头,说知道,然后他就跟我说什么依赖倒置原则,原谅我,我真的对设计原则不太懂,所以就是不知道。后来他就停了,这里需要了解一下。

23、工作中遇到难解决的问题是什么?

24、知道POI吗?

25、hibernate知道吗?我说我工作中使用的是mybatis,然后他很遗憾。问了一些mybatis的东西

26、数据库连接池的原理?

27、xml的结构和原理

28、bootstrap表单提交用过吗?我说没有,然后他说那你简历上写的是?我说我们只用bootstrap css风格,

然后他指出我的简历是这个单词拼错了(囧),这里需要了解一下

29、还有一些项目上的问题

猜你喜欢

转载自wulihjz123.iteye.com/blog/2415051