Java面试问题汇总

80 篇文章 1 订阅
73 篇文章 1 订阅

2年半工作经验,中级Java岗位面试遇到的问题汇总

1.列举常见的算法及对应的时间复杂度

2.代码实现快速排序算法

3.ArrayList 和 LinkedList 比较

4.HashMap、HashTable、TreeMap、LinkedHashMap、ConcurrentHashMap 比较以及使用场景

5.HashMap实现机制

6.Java IO流

7.数据库隔离级别

8.JDBC

9.String、StringBuffer、StringBuilder 比较以及使用场景

10.Spring 的使用体验

11.Spring IOC、AOP 原理

12.SpringMVC 生命周期

13.Spring事务隔离级别

14.Spring事务管理的原理

15.Spring MyBatis整合机制

16.MyBatis映射机制,如何实现代码和SQL分离

17.MyBatis中#与$的使用区别

18.Sql优化(考虑哪些因素,使用的工具)

19.数据库分库分表

20.Oracle如何实现分页的

21.Java和Go语言的比较

22.进程、线程、协程的比较

23.多线程两种实现方式以及Java为何提供这两种实现方式

24.线程池

25.线程的状态

26.JVM的原理

27.计算机内存结构

28.常见设计模式和使用场景

29.抽象类和普通类的比较以及Java为什么要提供抽象类

30.分布式框架使用经验(dubbo zookeeper)

31.MQ如何处理消息重复

32.HTTP协议3次握手过程

33.列举HTTP常见的消息头

34.spring boot、spring cloud

35.Object 类下面有哪些方法?equals实现过程?为什么重写equals方法必须重写hashCode方法?notify和notifyAll有什么

区别?equals,toString,clone,wait,notify,notifyAll

36.Map的数据结构,什么情况下会使用链表?

37.Restful接口如何实现权限验证?

38.GET请求和POST请求区别和使用场景

39.死锁的必要条件,怎么处理死锁?

40.ThreadLocal的设计概念和作用

41.类加载的几个过程分别是什么?

42.什么是双亲委派模型?好处是?

43.Java的引用有哪几种

44.volatile是否能保证线程安全

45.用两种方法实现一个线程安全的计数器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值