京东提前批Java一面面经
六点半准时开始,开始时面试官视频老有问题,(我的心态起了一丝变化)导致最后他用手机面的。
问题:
1.自我介绍
2.本科物理,研究生软件工程,Java是你自学的还是学校有课程?(自学的)
3.介绍下Java的集合类(巴拉巴拉,map那没讲好,建议一定要按步骤,条理清晰)
4.hashmap和concurrenthashmap
5.介绍一下volatile,你说了这么多原理,实际会在什么地方使用到?(实在想不起来,说了个单例模式的双重加锁检查)
7.Java的抽象类有用过么?(没怎么用过,讲了和接口的区别)
8.你说了这么多区别,那么什么场景用抽象类,什么时候用接口(不会,说了单继承的问题,面试官讲有时候会重写一些抽象类的方法,比如equals)
9.由于我多嘴说了个hashcode方法,面试官:那你说说为啥也必需重写hashcode方法?(后来面试官说,其实不重写编译也是不会报错的,那不重写会引发什么问题?不会)
10.Java的类加载机制,怎么理解你说的不会重复加载同一个类?什么情况破坏双亲委派机制?
11.什么情况会导致内存溢出(OOM)?出现了内存溢出或者是内存泄漏如何去定位?
12.JVM垃圾回收是如何工作的?(其实这里应该把GC那块能说的全说了,我问了是具体垃圾回收器么)
13.spring有用过么?源码有看过么?(没怎么看过,了解原理)。
14.spring中的设计模式(单例模式起头)
15.你几次提到过单例模式,那他有几种实现方式?能写一个单例模式么,写个线程安全的。
16.你用的sychronized,那你能不用这个或者lock实现一个么?我:??? 那枚举类型,不过不会写,说了思路
17.你学习Java相关的知识,技术栈技术点怎么学习的?
反问环节。
面试官人很好,中间讲的不好的地方都会告诉实际开发中会怎么解决,然后可能是顾虑到我是转专业自学的,就网开一面挑基础的问?
最后求个二面,许愿。
#内推##面经##Java工程师#