您的位置:首页 > 编程语言 > Java开发

Java应届生常见面试题汇总,问题全面到你不敢想象(持续更新中)

2020-07-16 05:21 225 查看

1、集合类有哪些,它们的区别是什么?HashMap的原理,Hashmap长度为什么设计成2的幂次方数,Hashmap(为什么红黑树是到8的时候使用:为什么是8;还有扩容机制)
2、数组和ArrayList的区别
3、多线程用到的多么?谈谈对线程、进程的理解以及实现线程的三种方式
4、你知道的设计模式有哪些?Spring中所用到的设计模式
5、Sql的存储过程你了解么?Mysql的优化?Mysql数据库你是如何优化的(不是sql优化),Mysql对与千万级数据的存储实现?
6、redis使用的场景,怎么实现的,为什么要用redis来实现?Redis的数据类型?
7、什么是事务,事务的并发问题有哪些?Mysql的事务隔离级别?
8、redis的持久化机制比较?redis主从复制之间是如何通信的?Redis高并发下的事务控制,Redis如何应对大量的数据
9、谈谈对shiro的理解
10、如何设计shiro的权限模型
11、Linux下的命令有哪些
12、什么是双亲委派机制?
13、什么是IOC?
14、Spring依赖注入的四种方式?
15、Mybatis的一级二级缓存
16、什么是AOP编程?Spring中aop的底层实现
17、Redis的淘汰策略
18、Redis集群结点如何选举?
19、synchronized与lock的区别,使用场景。看过synchronized的源码没
20、JVM自动内存管理,Minor GC与Full GC的触发机制
21、如何设计存储海量数据的存储系统
22、volatile关键字的如何保证内存可见性
23、TCP连接的特点
24、TCP连接如何保证安全可靠的
25、为什么TCP连接需要三次握手,两次不可以吗,为什么
26、动态代理与cglib实现的区别
27、redis继承mybatis二级缓存
28、stringbuffer和stringbuild的线程安全问题,又是如何实现的线程安全
29、你们是怎么处理异常的,都是try catch吗,如果是打印,怎么打印
30、mysql的端口号,分页,查询
31、String和StringBuilder的区别,String对象常用的方法有哪些。
32、面相对象的三大特性及作用,重载和覆盖的区别
33、快速排序和归并排序的时间复杂度
34、项目的需求分析是怎么做的,你做的哪些模块?功能怎么实现的。
35、.mysql文件存储和对象存储有什么区别?
36、mq的订阅发布是怎么实现的?
37、谈谈你对docker的理解,docker之间的通信
38、消息中间件你是如何开发消息模块的?
39、SpringMVC有哪些注解?Springboot的注解有哪些?关于切面的注解有哪些?
40、谈谈JVM内存结构,Jvm是如何回收垃圾对象的,如何知道这个对象需要被回收,用的是什么方法,jvm垃圾回收器有哪些,jVM调优了解吗?
41、你对请求数据的安全性是如何把控的。
42、到后台数据请求的风格是什么样的
43、你们在开发过程中使用的规范是什么样的
44、Springcloud有哪些组件?
45、 java中简单类型的存储比例(存储空间)。
46、hashSet与hashMap的区别。
47、乐观锁与悲观锁。
48、Service调用两个Mapper,如何确保事务一致性,及其实现原理。
49、说一下VO、DTO、DO、PO。
50、Java语言的特点,说一下为什么平时用java而不用c语言。
51、谈谈对Spring,SpringMVC与SpringBoot的理解。
52、ActiveMQ怎么实现秒杀,有没有更好的方法。
53、什么是线程安全,什么是线程不安全,举例。
54、说一下slf4j,log4j,logback的区别
55、接口的幂等性
56、说一下单点登录
57、如何保持缓存与数据库数据一致
58、如何保持主从库数据一致
59、数据库如何进行分库分表
60、你所理解的三次握手,四次挥手
61、谈谈你对spring容器的理解
62、java开发中异常怎样定义好
63、谈谈Threadlocal,ThreadLocal内存溢出
64、跨域问题以及解决方案
65、Spring装配bean有几种方式
66、spring中@Autowired @Resource区别
67、mybaits中#{}和${}有什么区别,order by排序的时候用哪个
68、join和wait的区别
69、arraylist和linkedlist的区别
70、mysql分页关键字是什么
71、数组链表的区别 链表为什么增删快
72、地址栏输入网址到页面显示经历了哪些步骤
73、堆和栈的区别 队和队列的区别
74、有这条数据则修改没有则添加 SQL语句怎么写
75、oracle与mysql区别
76、md5加密
77、shiro授权的步骤
78、了解缓存雪崩吗?缓存穿透?缓存击穿?
79、七层网络模型 http与HTTPS区别
80、什么是restful post put 区别
81、session和cookie的区别
82、Elasticsearch查询为什么这么快?Elasticsearch集群搭建,Elasticsearch数据类型都有哪些?
83、0.1*3==0.3结果是true还是false。
84、sql优化,动态sql,mysql怎么设置日期格式,mysql怎么计算字符串的长度。
85、说一下linux常用指令,以及各自的作用,vim、vi中怎么删除一行、多行文字,redis启动方式以及数据类型。
86、ES除了做搜索还用来做过什么?
87、你用过SpringCloud,是做的练习还是项目?负责的哪个模块?现在让你上手开发你能做吗?
88、Thread 类中的start() 和 run() 方法有什么区别?
89、自动装箱和拆箱,基本数据类型与包装类能直接比较吗?
90、二叉树的遍历的时间复杂度,mysql的存储结构
91、你的项目怎么解决一个用户的重复登录
92、DDos攻击有那些预防方法?什么是XSS 攻击?
93、开发中怎么降低代码的耦合?
94、怎么防止接口裸奔
95、Hibernate和SpringDataJPA是什么关系?
96、数据库的索引结构,怎么实现的?
97、什么是javabean?
98、简单介绍一下你的最近的一个项目
99、谈谈你开发整个项目的过程
100、平时浏览什么论坛?有发布过什么学术行的文章吗?有项目源码可看吗?

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: