java高级面试
2023-02-17 17:37:18 56 举报
AI智能生成
java高级面试宝典
作者其他创作
大纲/内容
Spring
Spring由哪些模块组成?
解释AOP模块及其应用场景
什么是SpringIOC容器?优点是什么?
Bean工厂和Applicationcontexts有什么区别?
哪种依赖注入方式你建议使用,构造器注入,还是Setter方法注入?
解释Spring支持的几种bean的作用域。
Spring框架中的单例bean是线程安全的吗?
设计模式
IO
Redis
MQ
分布式与高并发
阿里云
java基础
集合
说说 List, Set, Map 四者的区别?
Arraylist 与 LinkedList 区别?
说一说 ArrayList 的扩容机制吧
说一说 HashMap 的扩容机制吧
HashMap 和 Hashtable 的区别?
线程安全
效率
对 Null key 和 Null value 的支持
始容量大小和每次扩充容量大小的不同
底层数据结构
集合遍历add/remove问题
集合数组互相转换?Arrays.asList()/Collection.toArray()
java接口和抽象类的异同
什么是重写和重载
java的基本类型和int和long分别占用内存空间大小
java的反射机制和应用场景
JVM
GC的三种收集方法:标记清除、标记整理、复制算法的原理与特点,分别用在什么地方,如果让你优化收集方法,有什么思路?
JVM内存分哪几个区,每个区的作用是什么?
堆里面的分区:Eden,survival(from+to),老年代,各自的特点。
GC收集器有哪些?CMS收集器与G1收集器的特点。
简述java类加载过程和机制?
类加载器双亲委派模型机制?
Jvm 常用参数及其作用
多线程
多线程
说说线程的生命周期和状态?
什么是上下文切换?
什么是线程死锁?如何避免死锁?
破坏请求与保持条件 :一次性申请所有的资源。
破坏不剥夺条件 :占用部分资源的线程进一步申请其他资源时,如果申请不到,可以主动释放它占有的资源。
破坏循环等待条件:靠按序申请资源来预防。按某一顺序申请资源,释放资源则反序释放。破坏循环等待条件。
new 一个 Thread为什么调用 start() 方法时会执行 run() 方法,为什么不能直接调用 run() 方法?
new 一个 Thread
说一说自己对于 synchronized 关键字的了解?synchronized 关键字解决的是多个线程之间访问资源的同步性,synchronized关键字可以保证被它修饰的方法或者代码块在任意时刻只能有一个线程执行。
线程池
实现 Runnable 接口和 Callable 接口的区别
ThreadPoolExecutor 构造方法常见参数分析
ThreadPoolExecutor
ThreadLocal
ThreadLocal的简述
微服务
Ribbon
Ribbon是什么?Nginx和Ribbon的区别?
Ribbon底层实现原理
@LoadBalanced注解的作用
微服务架构
什么是微服务架构?
SpringCloud由什么组成?简述各个模块的功能及作用
Spring Cloud 和dubbo区别?
注册中心
服务注册和发现是什么意思?Spring Cloud 如何实现?
什么是Eureka?Eureka怎么实现高可用?
Nacos用过吗?Nacos的最新版本?
DiscoveryClient的作用?
Hystrix
什么是断路器
谈谈服务雪崩效应?产生雪崩的原因?
谈谈服务降级、熔断、服务隔离
服务降级底层是如何实现的?
用过阿里sentinel吗?
Feign
Feign是啥?
Springcloud有几种服务调用方式?
Ribbon和Feign调用服务的区别?
Gateway
什么是Spring Cloud Gateway?
GateWay怎么跟认证中心集成?
网络
tcp、http与https协议详解
http响应码分析
数据库
mysql
varchar与char的区别以及varchar(50)中的50代表的涵义?
索引的工作机制
数据库优化经验
InnoDB支持的四种事务隔离级别名称,以及逐级之间的区别?
HAVNG子句和WHERE的异同点?
当记录不存在时insert,当记录存在时update,语句怎么写?
Nginx
数据结构
K8s容器
0 条评论
下一页