美团一面--java后端开发(1.5h)

沉默王二牛客优质文章约 969 字大约 3 分钟

1.自我介绍

2.java的基本数据类型,各自的字节数;

3.基本数据类型和包装数据类型的区别,int和Integer有什么区别(默认值不一样,泛型只能是包装数据;

4.浮点数据类型使用的时候要注意什么,精度丢失的原因?

5.java面对对象的特征,具体表现是什么,接口和抽象类的区别和共同点(都不能直接实例化),继承的优缺点?

6.==和equals区别;

7.hashcode;

8.java里面的异常,之间的区别,说几个常见异常;

9.反射是什么?优缺点,反射的应用场景

10.讲下注解(因为前面提到了我用到了自定义注解,所以我解释了自定义注解我的实现);

11.arratLsit和LinkedList讲一讲,是线程安全的嘛?arratLsit初始化大小,怎么从0变到10的?(扩容算法实现的);

12.hashmap底层数据结构和原理;为什么转化成红黑树?是线程安全嘛?想用安全的hashmap,该怎么做?

13.ConcurrentHashmap怎么实现的线程安全?

14.jvm的数据区域,1.8的元空间了解吗?

15.堆的结构,垃圾回收的区域都有哪些?怎么判断死亡?引用计数法的缺点(太紧张没想起来,应该是循环引用的问题)?

16.垃圾回收算法和常见垃圾回收器,讲了cms和g1,年轻代有哪些垃圾收集器?说下g1和摒弃分代的优点(也太紧张忘了,应该是最大区域回收)。

17.类的生命周期(类加载),讲下双亲委派机制,最顶层的类加载器是什么;

18.了解系统调用嘛,哪些用户态会转换到系统态?

19.进程和线程的区别,线程的状态,进程间的通信方式,同步方式?

20.volatile了解吗,有原子性嘛,多线程怎么实现原子性,用过synchronize嘛,讲一讲?synchronize可以作用到什么上面,和ReentrantLock的区别

21.threadlocal讲一讲;

22.线程池的运行流程;

23.网络的七层模型,tcp和udp在哪一层,区别是什么?

24.http属于那一层,常见的状态码?说下400,302;

25.Redis除了做缓存还能用来干什么,数据结构,缓存过期是怎么清理的,随便讲一个淘汰算法?

26.spring的bean生命周期;

27.讲下IOC;

28.sentinel和nacos的主要作用和原理;

29.问了问项目;

30.问了个模块我的数据库设计;

31.我在项目里怎么用的数据库表的索引;

32.分布式锁怎么用的?我讲了Redision锁。

33.算法:二分查找。

反问

转载链接:https://www.nowcoder.com/discuss/1016319open in new window,整理:沉默王二