-
19、HashTable(线程安全)
-
20、TreeMap(可排序)
-
21、LinkHashMap(记录插入顺序)
-
22、泛型类
-
23、类型通配符?
-
24、类型擦除
第三分类 Java中的IO与NIO面试题
第四分类 Java反射面试题
第五分类 Java序列化面试题
第六分类 Java注解面试题
第七分类 多线程&并发面试题
-
1、Java中实现多线程有几种方法
-
2、继承 Thread 类
-
3、实现 Runnable 接口。
-
4、ExecutorService、 Callable、 Future 有返回值线程
-
5、基于线程池的方式
-
6、4 种线程池
-
7、如何停止一个正在运行的线程
-
8、notify()和notifyAll()有什么区别?
-
9、sleep()和wait() 有什么区别?
-
10、volatile 是什么?可以保证有序性吗?
-
11、Thread 类中的start() 和 run() 方法有什么区别?
-
12、为什么wait, notify 和 notifyAll这些方法不在thread类里面?
-
14、Java中interrupted 和 isInterruptedd方法的区别?
-
15、Java中synchronized 和 reentrantlock 有什么不同?
-
16、有三个线程T1,T2,T3,如何保证顺序执行?
-
17、SynchronizedMap和ConcurrentHashMap有什么区别?
-
18、什么是线程安全
-
19、Thread类中的yield方法有什么作用?
-
20、Java线程池中submit() 和 execute()方法有什么区别?
-
21、说一说自己对于 synchronized 关键字的了解
-
22、说说自己是怎么使用 synchronized 关键字,在项目中用到了吗synchronized关键字最主要的三种使用方式
-
23、什么是线程安全?Vector是一个线程安全类吗?
-
24、volatile关键字的作用?
-
25、简述一下你对线程池的理解
-
26、线程生命周期(状态)
-
27、新建状态(NEW)
-
28、就绪状态(RUNNABLE)
-
29、运行状态(RUNNING)
-
30、阻塞状态(BLOCKED)
-
31、线程死亡(DEAD)
-
32、终止线程 4 种方式
-
33、start 与 run 区别
-
34、JAVA 后台线程
-
35、什么是乐观锁
-
36、什么是悲观锁
-
37、什么是自旋锁
-
38、Synchronized 同步锁
-
40、Condition 类和 Object 类锁方法区别区别
-
41、tryLock 和 lock 和 lockInterruptibly 的区别
-
42、Semaphore 信号量
-
43、Semaphore 与 reentrantlock 区别
-
44、可重入锁(递归锁)
-
45、公平锁与非公平锁
-
46、ReadWriteLock 读写锁
-
47、共享锁和独占锁
-
48、重量级锁(Mutex Lock)
-
49、轻量级锁
-
50、偏向锁
-
51、分段锁
-
52、锁优化
-
53、线程基本方法
-
54、线程等待(wait)
-
55、线程睡眠(sleep)
-
56、线程让步(yield)
-
57、线程中断(interrupt)
-
58、Join 等待其他线程终止
-
59、为什么要用 join()方法?
-
60、线程唤醒(notify)
-
61、线程其他方法
-
62、进程
-
63、上下文
-
64、寄存器
-
65、程序计数器
-
66、PCB-“切换桢”
-
67、上下文切换的活动
-
68、引起线程上下文切换的原因
-
69、同步锁
-
70、死锁
-
71、线程池原理
-
72、线程复
-
73、线程池的组成
-
74、拒绝策略
-
75、Java 线程池工作过程
-
76、JAVA 阻塞队列原理
-
77、Java 中的阻塞队列
-
78、ArrayBlockingQueue(公平、非公平)
-
79、LinkedBlockingQueue(两个独立锁提高并发)
【一线大厂Java面试题解析+核心总结学习笔记+最新架构讲解视频+实战项目源码讲义】
浏览器打开:qq.cn.hn/FTf 免费领取
80、PriorityBlockingQueue(compareto 排序实现优先)
-
81、DelayQueue(缓存失效、定时任务 )
-
82、SynchronousQueue(不存储数据、可用于传递数据)
-
83、LinkedTransferQueue
-
84、LinkedBlockingDeque
-
85、在 java 中守护线程和本地线程区别
-
86、线程与进程的区别?
-
87、什么是多线程中的上下文切换?
-
88、死锁与活锁的区别,死锁与饥饿的区别?
-
89、Java 中用到的线程调度算法是什么?
-
90、什么是线程组,为什么在 Java 中不推荐使用?
-
91、为什么使用 Executor 框架?
-
92、在 Java 中 Executor 和 Executors 的区别?
-
93、如何在 Windows 和 Linux 上查找哪个线程使用的 cpu 时间最长?
-
94、什么是原子操作?在 Java Concurrency API 中有哪些原子类(atomic classes)?
-
95、Java Concurrency API 中的 Lock 接口(Lock interface)是什么?对比同步它有什么优势?
-
96、什么是 Executors 框架?
-
97、什么是阻塞队列?阻塞队列的实现原理是什么?如何使用阻塞队列来实现生产者-消费者模型?
-
98、什么是 Callable 和 Future?
-
99、什么是 FutureTask?使用 ExecutorService 启动任务。
-
100、什么是并发容器的实现?
-
101、多线程同步和互斥有几种实现方法,都是什么?
-
102、什么是竞争条件?你怎样发现和解决竞争?
-
104、Java中,你怎样唤醒一个阻塞的线程?
-
105、在 Java 中 CycliBarriar 和 CountdownLatch 有什么区别?
-
106、什么是不可变对象,它对写并发应用有什么帮助?
-
107、Java 中用到的线程调度算法是什么?
-
108、什么是线程组,为什么在 Java 中不推荐使用?
第八分类 面试之JVM
-
1、数据库存储引擎
-
2、InnoDB(B+树)
-
2、TokuDB( Fractal Tree-节点带数据)
-
3、MyIASM
-
4、Memory
-
5、数据库引擎有哪些
-
6、InnoDB与MyISAM的区别
-
7、索引
-
8、常见索引原则有
-
9、数据库的三范式是什么
-
10、第一范式(1st NF - 列都是不可再分)
-
11、第二范式(2nd NF- 每个表只描述一件事情)
-
12、第三范式(3rd NF- 不存在对非主键列的传递依赖)
-
13、数据库是事务
-
14、sql优化
-
15、简单说一说drop、delete与truncate的区别
-
16、什么是视图
-
17、什么是内联接、左外联接、右外联接?
-
18、并发事务带来哪些问题?
-
20、大表如何优化?
-
21、水平分区
-
22、分库分表之后,id 主键如何处理
-
24、存储过程优化思路
-
25、触发器(一段能自动执行的程序)
-
26、数据库并发策略
-
27、MysqL 中有哪几种锁?
-
28、MysqL 中有哪些不同的表格?
-
31、CHAR 和 VARCHAR 的区别?
-
32、主键和候选键有什么区别?
-
33、myisamchk 是用来做什么的?
-
34、MyISAM Static 和 MyISAM Dynamic 有什么区别?
-
35、如果一个表有一列定义为 TIMESTAMP,将发生什么?
-
36、你怎么看到为表格定义的所有索引?
-
37、LIKE 声明中的%和_是什么意思?
-
38、列对比运算符是什么?
-
39、BLOB 和 TEXT 有什么区别?
-
41、MyISAM 表格将在哪里存储,并且还提供其存储格式?
-
43、如何显示前 50 行?
-
44、可以使用多少列创建索引?
-
45、Now()和 CURRENT_DATE()有什么区别?
-
46、什么是非标准字符串类型?
-
49、MysqL 里记录货币用什么字段类型好
-
50、MysqL 有关权限的表都有哪几个?
-
51、列的字符串类型可以是什么?
-
53、锁的优化策略
-
54、索引的底层实现原理和优化
-
55、什么情况下设置了索引但无法使用
-
56、实践中如何优化 MysqL
-
59、数据库中的事务是什么?
-
60、sql 注入漏洞产生的原因?如何防止?
-
61、为表中得字段选择合适得数据类型
-
62、存储时期
-
63、对于关系型数据库而言,索引是相当重要的概念,请回答有关索引的几个问题
-
64、解释 MysqL 外连接、内连接与自连接的区别
-
65、Myql 中的事务回滚机制概述
-
67、完整性约束包括哪些?
-
68、什么是锁?
-
69、什么叫视图?游标是什么?
-
70、什么是存储过程?用什么来调用?
-
71、如何通俗地理解三个范式?
-
72、什么是基本表?什么是视图?
-
73、试述视图的优点?
-
74、NULL 是什么意思
-
75、主键、外键和索引的区别?
-
76、你可以用什么来确保表格里的字段只接受特定范围里的值?
-
78、什么是乐观锁
-
79、什么是悲观锁
-
80、什么是时间戳
-
81、什么是行级锁
-
82、什么是表级锁
-
83、什么是页级锁
-
1、什么是 Redis?
-
2、Redis 与其他 key-value 存储有什么不同?
-
3、Redis 的数据类型?
-
4、使用 Redis 有哪些好处?
-
5、Redis 相比 Memcached 有哪些优势?
-
6、Memcache 与 Redis 的区别都有哪些?
-
7、Redis 是单进程单线程的?
-
8、一个字符串类型的值能存储最大容量是多少?
-
9、Redis持久化机制
-
10、缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题
-
11、热点数据和冷数据是什么
-
12、单线程的redis为什么这么快
-
13、redis的数据类型,以及每种数据类型的使用场景
-
14、redis的过期策略以及内存淘汰机制
-
16、为什么Redis的操作是原子性的,怎么保证原子性的?
-
17、Redis事务
-
18、Redis 的持久化机制是什么?各自的优缺点?
-
21、Redis 的回收策略(淘汰策略)?
-
22、为什么 edis 需要把所有数据放到内存中?
-
23、Redis 的同步机制了解么?
-
24、Pipeline 有什么好处,为什么要用 pipeline?
-
25、是否使用过 Redis 集群,集群的原理是什么?
-
26、Redis 集群方案什么情况下会导致整个集群不可用?
-
30、说说 Redis 哈希槽的概念?
-
31、Redis 集群的主从复制模型是怎样的?
-
32、Redis 集群会有写操作丢失吗?为什么?
-
33、Redis 集群之间是如何复制的?
-
34、Redis 集群最大节点个数是多少?
-
36、怎么测试 Redis 的连通性?
-
37、怎么理解 Redis 事务?
-
38、Redis 事务相关的命令有哪几个?
-
39、Redis key 的过期时间和永久有效分别怎么设置?
-
40、Redis 如何做内存优化?
-
41、Redis 回收进程如何工作的?
-
42、都有哪些办法可以降低 Redis 的内存使用情况呢?
-
43、Redis 的内存用完了会发生什么?
-
45、MysqL 里有 2000w 数据,redis 中只存 20w 的数据,如何保证 redis 中的数据都是热点数据?
-
46、Redis 最适合的场景?
-
47、假如 Redis 里面有 1 亿个 key,其中有 10w 个 key 是以某个固定的已知的前缀开头的,如果将它们全部找出来?
-
48、如果有大量的 key 需要设置同一时间过期,一般需要注意什么?
-
49、使用过 Redis 做异步队列么,你是怎么用的?
-
50、使用过 Redis 分布式锁么,它是怎么回事?
第十一分类 Memcached面试题
第十二分类 MongoDB面试题
第十三分类 Spring面试题
-
1、不同版本的 Spring Framework 有哪些主要功能?
-
2、什么是 Spring Framework?
-
3、列举 Spring Framework 的优点。
-
4、Spring Framework 有哪些不同的功能?
-
5、Spring Framework 中有多少个模块,它们分别是什么?
-
6、什么是 Spring 配置文件?
-
7、Spring 应用程序有哪些不同组件?
-
8、使用 Spring 有哪些方式?
-
9、什么是 Spring IOC 容器?
-
10、什么是依赖注入?
-
11、可以通过多少种方式完成依赖注入?
-
12、区分构造函数注入和 setter 注入
-
13、spring 中有多少种 IOC 容器?
-
14、区分 beanfactory 和 ApplicationContext。
-
15、列举 IoC 的一些好处。
-
16、Spring IoC 的实现机制。
-
17、什么是 spring bean?
-
18、spring 提供了哪些配置方式?
-
20、spring bean 容器的生命周期是什么样的?
-
21、什么是 spring 的内部 bean?
-
22、什么是 spring 装配
-
23、自动装配有哪些方式?
-
24、自动装配有什么局限?
-
25、什么是基于注解的容器配置
-
26、如何在 spring 中启动注解装配?
-
27、@Component, @Controller, @Repository
-
28、@required 注解有什么用?
-
29、@Autowired 注解有什么用?
-
30、@Qualifier 注解有什么用?
-
31、@RequestMapping 注解有什么用?
-
32、spring DAO 有什么用?
-
33、列举 Spring DAO 抛出的异常。
-
34、spring JDBC API 中存在哪些类?
-
35、使用 Spring 访问 Hibernate 的方法有哪些?
-
36、列举 spring 支持的事务管理类型
-
37、spring 支持哪些 ORM 框架
-
37、spring 支持哪些 ORM 框架
-
39、什么是 Aspect?
-
40、什么是切点(JoinPoint)
-
41、什么是通知(Advice)?
-
42、有哪些类型的通知(Advice)?
-
43、指出在 spring aop 中 concern 和 cross-cuttingconcern 的不同之处。
-
44、AOP 有哪些实现方式?
-
45、Spring AOP and AspectJ AOP 有什么区别?
-
46、如何理解 Spring 中的代理?
-
47、什么是编织(Weaving)?
-
48、Spring MVC 框架有什么用?
-
49、描述一下 dispatcherServlet 的工作流程
-
50、介绍一下 WebApplicationContext
-
51、什么是 spring?
-
52、使用 Spring 框架的好处是什么?
-
53、Spring 由哪些模块组成?
-
54、Spring的IOC和AOP机制
-
55、Spring中Autowired和Resource关键字的区别
-
56、依赖注入的方式有几种,各是什么?
-
57、讲一下什么是Spring
-
58、Spring MVC流程
-
59、springMVC是什么
-
60、SpringMVC怎么样设定重定向和转发的?
-
61、SpringMVC常用的注解有哪些
-
62、Spring的AOP理解
-
63、Spring的IOC理解
-
64、解释一下spring bean的生命周期
-
65、解释Spring支持的几种bean的作用域。
-
66、Spring基于xml注入bean的几种方式
-
67、Spring框架中都用到了哪些设计模式
-
68、核心容器(应用上下文) 模块
-
69、beanfactory – beanfactory 实现举例。
-
70、XMLbeanfactory
-
71、解释 AOP 模块
-
72、解释 JDBC 抽象和 DAO 模块。
-
72、解释对象/关系映射集成模块。
-
73、解释 WEB 模块。
-
74、Spring 配置文件
-
75、什么是 Spring IOC 容器?
-
76、IOC 的优点是什么?
-
77、ApplicationContext 通常的实现是什么?
-
78、Bean 工厂和 Application contexts 有什么区别?
-
79、一个 Spring 的应用看起来像什么?
-
80、什么是 Spring 的依赖注入?
-
81、有哪些不同类型的 IOC(依赖注入)方式?
-
82、哪种依赖注入方式你建议使用,构造器注入,还是 Setter方法注入?
-
83、什么是 Spring beans?
-
84、一个 Spring Bean 定义 包含什么?
-
85、如何给 Spring 容器提供配置元数据?
-
86、你怎样定义类的作用域?
-
87、解释 Spring 支持的几种 bean 的作用域。
-
88、Spring 框架中的单例 bean 是线程安全的吗?
-
89、解释 Spring 框架中 bean 的生命周期。
-
90、哪些是重要的 bean 生命周期方法?你能重载它们吗?
-
91、什么是 Spring 的内部 bean?
-
92、在 Spring 中如何注入一个 java 集合?
-
93、什么是 bean 装配?
-
94、什么是 bean 的自动装配?
-
95、解释不同方式的自动装配 。
-
96、自动装配有哪些局限性
-
98、什么是基于 Java 的 Spring 注解配置? 给一些注解的例子.
-
99、什么是基于注解的容器配置?
-
100、怎样开启注解装配?
-
101、@required 注解
-
102、@Autowired 注解
-
103、@Qualifier 注解
-
104、在 Spring 框架中如何更有效地使用 JDBC?
-
105、JdbcTemplate
-
106、Spring 对 DAO 的支持
-
107、使用 Spring 通过什么方式访问 Hibernate?
-
108、Spring 支持的 ORM
-
109、如何通过 HibernateDaoSupport 将 Spring 和 Hibernate结合起来?
-
110、Spring 支持的事务管理类型
-
111、Spring 框架的事务管理有哪些优点?
-
112、你更倾向用哪种事务管理类型?
-
113、解释 AOP
-
114、Aspect 切面
-
115、在 Spring AOP 中,关注点和横切关注的区别是什么?
-
116、连接点
-
117、通知
-
118、切点
-
119、什么是引入?
-
120、什么是目标对象?
-
121、什么是代理?
-
122、有几种不同类型的自动代理?
-
123、什么是织入。什么是植入应用的不同点?
-
124、解释基于 XML Schema 方式的切面实现。
-
125、解释基于注解的切面实现
-
126、什么是 Spring 的 MVC 框架?
-
127、dispatcherServlet
-
128、WebApplicationContext
-
129、什么是 Spring MVC 框架的控制器?
-
130、@Controller 注解
-
131、@RequestMapping 注解
第十四分类 Spring Boot面试题
第十五分类 Spring Cloud面试题
第十六分类 RabbitMQ面试题
-
1、为什么要用 dubbo?
-
2、dubbo的整体架构设计有哪些分层?
-
3、默认使用的是什么通信框架,还有别的选择吗?
-
4、服务调用是阻塞的吗?
-
5、一般使用什么注册中心?还有别的选择吗?
-
6、默认使用什么序列化框架,你知道的还有哪些?
-
7、服务提供者能实现失效踢出是什么原理?
-
8、服务上线怎么不影响旧版本?
-
10、说说核心的配置有哪些?
-
11、dubbo 推荐用什么协议?
-
13、画一画服务注册与发现的流程图?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。