2023年最新Java面试题【20W字】

目录:

第一章:java基础篇

1、 Java语言有哪些特点
2、面向对象和面向过程的区别
3 、八种基本数据类型的大小,以及他们的封装类
4、标识符的命名规则。
5、instanceof 关键字的作用
6、Java自动装箱与拆箱
7、 重载和重写的区别
8、 equals与==的区别
9、 Hashcode的作用
10、String、String StringBuffer 和 StringBuilder 的区别是什
么?
11、ArrayList和linkedList的区别
12、 HashMap和HashTable的区别
13、 Collection包结构,与Collections的区别
14、 Java的四种引用,强弱软虚
15、 泛型常用特点
16、Java创建对象有几种方式?
17、有没有可能两个不相等的对象有相同的hashcode
18、深拷贝和浅拷贝的区别是什么?
.......................................
45、说说深拷贝和浅拷贝?


第二章:JVM

1、说说类加载与卸载
2、简述一下JVM 的内存模型
3、说说堆和栈的区别
4、什么时候会触发FullGC
5、什么是Java 虚拟机?
6、为什么 Java 被称作是 平台无关的编程语 ”?
7、Java内存结构
8、说说对象分配规则
9、描述一下JVM 加载 class文件的原理机制?
............................................
33、 什么是 tomcat 类加载机制?

第三章:多线程和并发:

1、说说Java中实现多线程有几种方法

2、如何停止一个正在运行的线程

3notify()notifyAll()有什么区别?

4sleep()wait() 有什么区别?

5、volatile 是什么?可以保证有序性吗?

6、Thread 类中的start() run() 方法有什么区别?

7、为什么wait, notify notifyAll这些方法不在thread类里 面?

8、为什么waitnotify方法要在同步块中调用?

9、Java中interrupted isInterruptedd方法的区别?

10、Javasynchronized ReentrantLock 有什么不同?

11、有三个线程T1,T2,T3,如何保证顺序执行?

.....................................................

46、乐观锁和悲观锁的理解及如何实现,有哪些实现方式?

第四章:MyBatis

1、什么是MyBatis

2、说说MyBatis的优点和缺点

3#{}${}的区别是什么?

4、当实体类中的属性名和表中的字段名不一样 ,怎么办

5Mybatis是如何进行分页的?分页插件的原理是什么?

6、Mybatis是如何将sql执行结果封装为目标对象并返回的?都有哪些映射形式?

7 、 如何执行批量插入?
...................................................
14 MyBatis 中比如 UserMapper.java 是接口,为什么没有实
现类还能调用?

第五章:Mysql篇

1、数据库的三范式是什么
2、 MySQL数据库引擎有哪些
3、说说 InnoDB 与MyISAM的区别
4、数据库的事务
5、索引是什么
6、 SQL优化手段有哪些
7、简单说一说 drop delete truncate的区别
8、什么是视图
9、 什么是内联接、左外联接、右外联接?
10、并发事务带来哪些问题?
11 ,事务隔离级别有哪些 ?MySQL 的默认隔离级别是?
...................................................
34 MySQL 如何做到高可用方案?        

第六章:Redis篇

1 ,为什么要用缓存
2 ,使用 Redis 有哪些好处?
3 , 什么是 Redis
4 ,为什么 使用 Redis 而不是用 Memcache
5 ,为什么 Redis 单线程模型效率也能那么高?
6 ,说说 Redis 的线程模型
7 ,为什么 Redis 需要把所有数据放到内存中?
8 Redis 的同步机制了解是什么?
9 pipeline 有什么好处,为什么要用 pipeline
10 ,说一下 Redis 有什么优点和缺点
11 Redis 缓存刷新策略有哪些?
12 Redis 持久化方式有哪些?以及有什么区别?
...................................................
42 Redis 的数据类型及使用场景
限于文章篇幅原因,只能以截图的形式展示出来,有需要学习资料的小伙伴文末↓↓↓名片获取相关资料

内容展示:

Java基础篇

JVM

多线程和并发

Mybatis

Mysql:

Redis:

限于文章篇幅原因,只能以截图的形式展示出来,有需要学习资料的小伙伴下方↓↓↓名片获取相关资料

猜你喜欢

转载自blog.csdn.net/m0_64355285/article/details/133272640
今日推荐