java面试题(2019真实面试)

          今年8月份面试了一些公司(杭州),现将面试到的问题总结一下,不仅方便自己回顾,也给那些正在面试的伙伴们一些参考(至于答案需自己查找,更加深刻),都是自己亲身经历,比网上的应该更靠谱些!

1. 谈谈你对JVM的理解

2. 局部变量和全局变量的区别,存放在堆或栈?

3. java集合中有哪些是线程安全的?ArrayList和Linkedlist区别?Map用过哪些?HashMap数据结构?

4. 请写出文件读取的代码,正则表达式检测手机号的代码

5. sychication锁的原理,如何解决死锁?

6. redis是多线程吗?redis的数据类型有哪些?你在项目中什么时候用到?为什么查询速度快?redis和memcahe的区别?

7. 常见的设计模式用过哪些?jdk中哪些用到设计模式?

8. Mybatis批量操作是怎样实现的?

9. Spring的理解,源码?AOP和IOC

10. SpringBoot的理解,如何启动项目的?核心注解是什么?SpringBootAppcation包含哪三个注解,具体作用?

11. 分布式锁,乐观锁和悲观锁。

12. 数据库的隔离级别

13. Spring的事务有哪些?如何实现事务?事务的传播行为?

14. SpringMVC是如何执行的?

15. JVM内存溢出应该如何定位?

16. 了解消息队列吗?了解SpringCloud吗?SpringCloud有哪些组件?Eureka与ZooKeeper对比,从CAP理论来讲。服务之间用什么联系?

17. RPC的理解。

18. 如果系统响应慢,该如何定位问题?

19. volatile型变量

20. Mysql索引的底层结构是什么?B+树的叶子节点存储什么?高度是多高?

21. 数据库的优化有哪些措施?

22. http和https的区别

23. String,StringBuffer和StringBuilder的区别

24. 多线程如何实现?在项目哪些场景用到?线程池的参数

25. 在项目中遇到过哪些印象深刻的困难,如何解决的?

26. MySql的索引有哪些?组合索引的原则是什么?哪些情况索引会失效?

27. 谈谈Oracle存储过程。什么是触发器?

你可能感兴趣的:(JAVA)