Java常见面试题200+,学习、面试必备

简介: Java常见面试题200+,学习、面试必备

本套Java面试题,选取了企业面试最常问到的问题,可以做为Java工程师的面试宝典,也可以做为想要不断完善和扩充自己 java 技术的学习者。


主要包含:


Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、MySql、Redis、JVM 。


初学者不需要看后面的框架和 JVM 模块的知识


Java常见面试题


一、Java 基础


1.JDK 和 JRE 有什么区别?


2.== 和 equals 的区别是什么?


3.两个对象的 hashCode()相同,则 equals()也一定为 true,对吗?


4.final 在 java 中有什么作用?


5.java 中的 Math.round(-1.5) 等于多少?


6.String 属于基础的数据类型吗?


7.java 中操作字符串都有哪些类?它们之间有什么区别?


8.String str=”i”与 String str=new String(“i”)一样吗?


9.如何将字符串反转?


10.String 类的常用方法都有那些?


11.抽象类必须要有抽象方法吗?


12.普通类和抽象类有哪些区别?


13.抽象类能使用 final 修饰吗?


14.接口和抽象类有什么区别?


15.java 中 IO 流分为几种?


16.BIO、NIO、AIO 有什么区别?


17.Files的常用方法都有哪些?


二、容器


18.java 容器都有哪些?


19.Collection 和 Collections 有什么区别?


20.List、Set、Map 之间的区别是什么?


21.HashMap 和 Hashtable 有什么区别?


22.如何决定使用 HashMap 还是 TreeMap?


23.说一下 HashMap 的实现原理?


24.说一下 HashSet 的实现原理?


25.ArrayList 和 LinkedList 的区别是什么?


26.如何实现数组和 List 之间的转换?


27.ArrayList 和 Vector 的区别是什么?


28.Array 和 ArrayList 有何区别?


29.在 Queue 中 poll()和 remove()有什么区别?


30.哪些集合类是线程安全的?


31.迭代器 Iterator 是什么?


32.Iterator 怎么使用?有什么特点?


33.Iterator 和 ListIterator 有什么区别?


34.怎么确保一个集合不能被修改?


三、多线程


35.并行和并发有什么区别?


36.线程和进程的区别?


37.守护线程是什么?


38.创建线程有哪几种方式?


39.说一下 runnable 和 callable 有什么区别?


40.线程有哪些状态?


41.sleep() 和 wait() 有什么区别?


42.notify()和 notifyAll()有什么区别?


43.线程的 run()和 start()有什么区别?


44.创建线程池有哪几种方式?


45.线程池都有哪些状态?


46.线程池中 submit()和 execute()方法有什么区别?


47.在 java 程序中怎么保证多线程的运行安全?


48.多线程锁的升级原理是什么?


49.什么是死锁?


50.怎么防止死锁?


51.ThreadLocal 是什么?有哪些使用场景?


52.说一下 synchronized 底层实现原理?


53.synchronized 和 volatile 的区别是什么?


54.synchronized 和 Lock 有什么区别?


55.synchronized 和 ReentrantLock 区别是什么?


56.说一下 atomic 的原理?


125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/3629.html


相关文章
|
4天前
|
存储 Java 程序员
Java面试题:请解释Java中的永久代(PermGen)和元空间(Metaspace)的区别
Java面试题:请解释Java中的永久代(PermGen)和元空间(Metaspace)的区别
32 11
|
4天前
|
缓存 监控 算法
Java面试题:描述Java垃圾回收的基本原理,以及如何通过代码优化来协助垃圾回收器的工作
Java面试题:描述Java垃圾回收的基本原理,以及如何通过代码优化来协助垃圾回收器的工作
28 8
|
3天前
|
NoSQL Java 应用服务中间件
Java高级面试题
Java高级面试题
|
3天前
|
网络协议 安全 前端开发
java面试题
java面试题
|
3天前
|
NoSQL Java 关系型数据库
常见Java面试题
常见Java面试题
|
10月前
|
存储 Java 程序员
Java面试题日积月累(数据库30道)
Java面试题日积月累(数据库30道)
48 0
|
5天前
|
SQL 安全 Java
Java面试题:什么是JDBC以及如何在Java中使用它进行数据库操作?
Java面试题:什么是JDBC以及如何在Java中使用它进行数据库操作?
6 0
|
5天前
|
druid Java 数据库连接
Java面试题:解释数据库连接池的概念及其作用,讨论常见的连接池实现。
Java面试题:解释数据库连接池的概念及其作用,讨论常见的连接池实现。
12 0
|
5天前
|
SQL Java 关系型数据库
Java面试题:描述JDBC的工作原理,包括连接数据库、执行SQL语句等步骤。
Java面试题:描述JDBC的工作原理,包括连接数据库、执行SQL语句等步骤。
14 0
|
5天前
|
SQL 监控 Java
Java面试题:简述数据库性能优化的常见手段,如索引优化、SQL语句优化等。
Java面试题:简述数据库性能优化的常见手段,如索引优化、SQL语句优化等。
10 0