Java开发-个人面经高频知识点整理

总结一下自己在刚刚的春招面试中常常碰到的题目,希望可以帮助到大家。我分类别向大家介绍,方便大家观看。

一.Java基础

1. string的相关构造方法
2. 进程与线程的区别

3.
高并发HashMap的环是如何产生的
4. volatile
作用(必考)
5. Atomic
类如何保证原子性(CAS操作)(必考)
6. synchronized
Lock的区别(必考)
7. ThreadLocal
的原理和实现
8.
为什么要使用线程池(必考)
9.
核心线程池ThreadPoolExecutor的参数(必考)
10. ThreadPoolExecutor
的工作流程(必考)
11.
如何控制线程池线程的优先级
12.
线程之间如何通信
13. Boolean
占几个字节
14. jdk1.8/jdk1.7
都分别新增了哪些特性
15. Exception
Error
16. Object
类内的方法

二、JVM

1. 运行时数据区域(内存模型)(必考)
2.
垃圾回收机制(必考)
3.
垃圾回收算法(必考)
4. Minor GC
Full GC触发条件
5. GC
Stop the worldSTW
6.
各垃圾回收器的特点及区别
7.
双亲委派模型
8. JDBC
和双亲委派模型关系
9. JVM
锁优化和锁膨胀过程
10.介绍下垃圾收集机制(在什么时候,对什么,做了什么)。
11.垃圾收集有哪些算法,各自的特点。
12.类加载的过程。
13.双亲委派模型。
14.有哪些类加载器。
15.能不能自己写一个类叫java.lang.String。

三、集合相关的问题

1.HashMap、LinkedHashMapConcurrentHashMapArrayListLinkedList的底层实现。
2.HashMap和Hashtable的区别。
3.ArrayList、LinkedList、Vector的区别。
4.HashMap和ConcurrentHashMap的区别。
5.HashMap和LinkedHashMap的区别。
6.HashMap是线程安全的吗?ConcurrentHashMap是怎么实现线程安全的?

四、多线程并发相关问题

1.创建线程的3种方式。
2.什么是线程安全。
3.Runnable接口和Callable接口的区别。
4.wait方法和sleep方法的区别。
5.synchronized、Lock、ReentrantLock、ReadWriteLock。
6.介绍下CAS(无锁技术)。
7.volatile关键字的作用和原理。
8.什么是ThreadLocal。
9.创建线程池的4种方式。
10.ThreadPoolExecutor的内部工作原理。
11.分布式环境下,怎么保证线程安全。

五、Redis

1. Redis的应用场景
2. Redis
支持的数据类型(必考)
3. zset
跳表的数据结构(必考)
4. Redis
的数据过期策略(必考)
5. Redis
LRU过期策略的具体实现
6.
如何解决Redis缓存雪崩,缓存穿透问题
7. Redis
的持久化机制(必考)
8. Redis
的管道pipeline

六、MySQL

1. 事务的基本要素
2.
事务隔离级别(必考)
3.
如何解决事务的并发问题(脏读,幻读)(必考)
4. MVCC
多版本并发控制(必考)
5. binlog,redolog,undolog
都是什么,起什么作用
6. InnoDB
的行锁/表锁
7. myisam
innodb的区别,什么时候选择myisam
8.
为什么选择B+树作为索引结构(必考)
9.
索引B+树的叶子节点都可以存哪些东西(必考)
10.
查询在什么时候不走(预期中的)索引(必考)
11. sql
如何优化
12. explain
是如何解析sql
13. order by
原理
14.给题目让你手写SQL。
15.有没有SQL优化经验。
16.Mysql索引的数据结构。
17.Explain的Type列有哪几种值。
18.SQL关键字的执行顺序。
19.有哪几种索引。
20.什么时候该(不该)建索引。
21.Explain包含哪些列。

七、框架相关问题

1.Hibernate和Mybatis的区别。
2.Spring MVC和Struts2的区别。
3.Spring用了哪些设计模式。
4.Spring中AOP主要用来做什么。
5.Spring注入bean的方式。
6.什么是IOC,什么是依赖注入。
7.Spring是单例还是多例,怎么修改。
8.Spring事务隔离级别和传播性。
9.介绍下Mybatis/Hibernate的缓存机制。
10.Mybatis的mapper文件中#和$的区别。
11.Mybatis的mapper文件中resultType和resultMap的区别。
12.Mybatis中DAO层接口没有写实现类,Mapper中的方法和DAO接口方法是怎么绑定到一起的,其内部是怎么实现的。
13. Spring的IOC/AOP的实现(必考)
14. 动态代理的实现方式(必考)
15.Spring如何解决循环依赖(三级缓存)(必考)
16. Spring的后置处理器
17. Spring的@Transactional如何实现的(必考)
18.Spring的事务传播级别
19. BeanFactory和ApplicationContext的联系和区别

八、其他问题

1.介绍下栈和队列。
2.==和equals的区别。
3.常量池相关问题。
4.int和Integer的自动拆箱/装箱相关问题。
5.重载和重写的区别。
6.String和StringBuilderStringBuffer的区别。
7.介绍下B树、二叉树。
8.ajax的4个字母分别是什么意思。
9.常用的linux命令。


#面试高频考点汇总##java工程师##面经#
全部评论
感谢同学的整理与汇总~京东卡已经在路上啦~😉 ---------------------- 邀请大家参加春招高频面试考点整理活动呀~ 总结面试高频考点,领100元京东卡!【技术/硬件专场】 技术/硬件专场: https://www.nowcoder.com/discuss/611345
点赞 回复 分享
发布于 2021-03-30 11:52

相关推荐

10-30 23:23
已编辑
中山大学 Web前端
去B座二楼砸水泥地:这无论是个人素质还是专业素质都👇拉满了吧
点赞 评论 收藏
分享
2 87 评论
分享
牛客网
牛客企业服务