java 常见面试题

面试的搬员工,斜体的都是很经常问的, 持续更新中


集合

java 常用集合list与Set、Map区别及适用场景总结

HashMap 和 Hashtable 的区别

HashSet 和 HashMap 区别

HashMap 和 ConcurrentHashMap 的区别

HashMap 的工作原理 ,怎么实现线程安全

ConcurrentHashMap 的工作原理(分段锁)

并发集合

从jvm编译优化角度解读String的赋值比较

String、StringBuffer与StringBuilder介绍


线程

创建线程的方式及实现  

sleep() 、wait() 、join()、yield()有什么区别

CountDownLatch 原理 简介

CyclicBarrier 原理

说说 Semaphore 原理

说说 Exchanger 原理

CountDownLatch 与 CyclicBarrier 区别

ThreadLocal 原理分析

讲讲线程池的实现原理

线程池的几种方式,常用的几种线程池 ,线程池里常用的属性

线程的生命周期

synchronized的原理

synchronized lock区别

volatile 实现原理

ReentrantLock

java锁的种类

提升锁性能

如何让10个线程串行的执行 (join)


IO

Netty如何解决粘包拆包

Netty之Reactor线程模型


Spring

AOP的原理,IOC的原理

Spring 源码解析

Spring事务的传播机制

spring bean 的生命周期

cglib动态代理 jdk代理区别

Spring 框架中用到了哪些设计模式

Spring如何解决循环依赖

springMvc的工作流程,springMvc的controller是单例的;


JVM

JVM的内存模型

垃圾回收机制和调优手段

JVM性能调优

Java虚拟机-JVM各种参数配置大全详细

深入理解 Java 垃圾回收机制

类加载机制

JMM内存模型


设计模式

  设计模式的六大原则

  23种设计模式

  单例模式 常见写法(很常问)

  贫血模型or领域模型



微服务分布式

soa简介

高效的Java序列化(Kryo和FST)

序列化性能比较

缓存 哈希

rpc和restful

http请求方法

如何设计一个秒杀系统


Dubbo

dubbo小功能

SpringCloud 和 Dubbo有什么差别

dubbo简介    dubbo调用流程

dubbo序列化

Dubbo测试和生产公用一套zookeeper,怎么保证消费不冲突(group,version)

Dubbo接口的安全性: token安全验证  给dubbo接口添加白名单——dubbo Filter的使用

zookeeper原理简介

Redis

Redis为什么那么快

redis简介(数据结构,持久化方式等等)

Redis集群方案

mySQL里有2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据?

redis数据淘汰策略

缓存穿透,缓存雪崩

redis主从同步原理

基于Redis实现分布式锁与实现


常见消息队列MQ

RocketMQ批量消费、消息重试、消费模式、刷盘方式

RocketMq


分布式事物

分布式事务处理方案 hmily,myth ,raincat,soul

基于消息中间件的解决分布式事务框架

TCC方案

二阶段提交

Spring分布式事务JOTM-atomikos实现





数据库(mysql)

数据库五大范式

sql优化   大表优化

mysql的数据库引擎的特性

MyISAM与InnoDB的区别

mysql数据库事务的特性和隔离级别

mysql 执行计划的参数与作用

mysql的锁

mysql的悲观锁(for update)与乐观锁(version版本号)

mysql btree与hash索引的适用场景和限制

MySQL的btree索引和hash索引的区别

MySQL索引背后的数据结构及算法原理

数据库分库分表策略的具体实现方案

分表之后如何查询分页

说说分库与分表设计(mycat,sharding-jdbc)

mycat 简单分析(写的很棒)

Mycat的权威指南

数据连接池对比


排序算法

常见排序算法

AVL树,红黑树,B-B+树,Trie树原理和应用


杂七杂八

项目中有没有遇到你影响最深的问题,怎么解决的?

遇到问题你一般是怎么解决的?





你可能感兴趣的:(java 常见面试题)