校招 到店 / 后端-Java / 一面

[面试日期] 2024-03-28 [面试时长] 60min
[学校背景] 武汉大学 | 985 [学历背景] 未知
[发布人] 面试之星官方收录
自我介绍 介绍一下项目的功能和模块、承担了什么角色、数据库的表怎么设计的 1、重载重写的区别? 2、重写equals的时候为什么必须要重写hashcode? 3、arraylist和linkedlist的区别? 4、vector是如何实现线程安全的?(这个在之前背的八股里都没遇到,Vector 的方法都具有 synchronized 关键字修饰。但对于复合操作,Vector 仍然需要进行同步处理。) 5、hashmap的底层数据结构?(把数组+链表说成哈希表+链表了,纯猪脑) 6、hashmap放入一个元素的过程? 7、ConcurrentHashMap是如何实现线程安全的? 8、synchronized 和 reentrantlock 的区别? 9、reentrantlock 如何实现公平锁? 10、synchronized加在静态方法和非静态方法方法上的区别? 11、synchronized的锁升级过程? 12、单例模式有哪些实现方式?(只了解饿汉式和懒汉式) 13、饿汉式如何保证线程安全?(胡言乱语...) 14、线程池的核心参数? 15、线程池拒绝策略有哪些? 16、当来了一个任务线程池如何处理? 17、受检异常与非受检异常的区别? 18、有哪些非受检异常?(nullpointer,illegalargument记不清了,汗颜,太细了) 19、spring和springboot的区别?为什么要基于spring再封装出springboot? 20、springboot常用的注解? 21、涉及到依赖注解的注解? 22、@aotuwired和@resource的区别? 23、@inject的使用场景? 24、springboot快速启动的原理? 25、AOP的原理? 26、动态代理的分类?(jdk proxy,cglib) 27、jdk proxy和cglib分别在什么场景使用?(代不代理接口) 28、springboot 声明bean的注解? 29、循环依赖? 30、springboot怎么解决循环依赖? 31、三级缓存? 32、每一级缓存的作用? 33、springbean的生命周期? 34、springbean 初始化及实例化时可以扩展的地方(postprocessor等orz) 35、缓存穿透和缓存雪崩的定义和解决方法? 36、布隆过滤器的原理? 37、布隆过滤器的误判概率受什么影响? 38、mysql 事务隔离级别? 39、可重复读是如何实现的? 40、MVCC 41、当前读和快照读的区别? 42、分析一条sql语句的索引使用情况 43、索引的数据结构? 44、为什么索引不使用b树? 45、jvm内存区域? 46、threadlocal原理? 47、theradloalmap如何解决哈希冲突? 算法 lc92
AI 推荐面试题
No Data