java 入门面试题

java 入门面试题起因焦虑。每次自己想跳槽的时候,内心总是担忧着那些面试题怎么解答。 很多问题在实际工作中并不会遇到,没有实际的解决问题经验,看过也记不住。 假如我明年需要换工作,那现在把下次的面试准备工作,拆分、融入到平时的每天中,会不会取得更满意的offer?目标收集网上各种经典的java面试题 做出答案,分享出去,和猿友讨论,不断进步 扩大知识图谱,扎实基础,梳理知识脉络…

大家好,又见面了,我是你们的朋友全栈君。

起因

  • 焦虑。每次自己想跳槽的时候,内心总是担忧着那些面试题怎么解答。
  • 很多问题在实际工作中并不会遇到,没有实际的解决问题经验,看过也记不住。
  • 假如我明年需要换工作,那现在把下次的面试准备工作,拆分、融入到平时的每天中,会不会取得更满意的offer?

 

目标

  • 收集网上各种经典的 java 面试题
  • 做出答案,分享出去,和猿友讨论,不断进步
  • 扩大知识图谱,扎实基础,梳理知识脉络
  • 避免下次面试时的准备工作
  • 锻炼写文章的能力

 

Java 面试题

基础:

JDK 和 JRE 的区别

== 和 equals 的区别

基本类型和包装类对象使用 == 和 equals进行比较的结果?

什么是装箱?什么是拆箱?装箱和拆箱的执行过程?常见问题?

hashCode()相同,equals() 也一定为 true吗?

final 在 java 中的作用

final finally finalize()区别

finally语句块一定执行吗?

final 与 static 的区别

return 与 finally 的执行顺序对返回值的影响

String对象中的replace和replaceAll的区别?

Math.round(-1.5) 等于多少?

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

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

如何将字符串反转?

String 类的常用方法

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

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

抽象类能使用 final 修饰吗?

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

Java4种访问修饰符权限的区别?

Java中的 << << >>> 是什么?

javap 指令

throw 和 throws 的区别?

try-catch-finally 中哪个部分可以省略?

常见的异常类有哪些?

 

IO:

java 中 IO 流有哪些?

BIO、NIO、AIO 有什么区别?

什么是JAVA内部类?

nio中的Files类常用方法

 

集合:

java 有哪些常用容器(集合)?

Collection 和 Collections 有什么区别?

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

HashMap 和 Hashtable 有什么区别?

使用 HashMap 还是 TreeMap?

HashMap 的实现原理

HashSet 的实现原理

ArrayList 和 LinkedList 的区别

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

ArrayList 和 Vector 的区别是什么?

Array 和 ArrayList 有何区别?

在 Queue 中 add() 和 offer()有什么区别?

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

在 Queue 中 element() 和 peek()有什么区别?

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

迭代器 Iterator 是什么?

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

Iterator 和 ListIterator 有什么区别

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

 

并发:

并行和并发有什么区别?

线程和进程的区别?

守护线程是什么?

创建线程有哪些方式?

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

Runnable 和 Callable 有什么区别?

线程有哪些状态?

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

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

线程池有哪些状态?

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

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

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

什么是死锁?

怎么防止死锁?

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

synchronized 底层实现原理?

synchronized 和 volatile 的区别是什么?

synchronized 和 Lock 有什么区别?

synchronized 和 ReentrantLock 区别是什么?

ReadWriteLock 如何使用?

JDK 中 Atomic 开头的类实现原子性的原理是什么?

介绍一下 ForkJoinPool

LongAdder 与AtomicLong有什么区别?

 

反射:

什么是反射?

动态代理是什么?应用场景?

怎么实现动态代理?

 

序列化:

什么是 java 序列化?什么情况下需要序列化?

 

克隆:

什么场景要对象克隆?

如何实现对象克隆?

深拷贝和浅拷贝区别是什么?

 

web:

jsp 和 servlet 有什么区别?

jsp 有哪些内置对象?作用分别是什么?

jsp 的 4 种作用域?

session 和 cookie 有什么区别?

session 的工作原理?

客户端禁止 cookie,session 还能用吗?

http 响应码 301 和 302 代表的是什么?有什么区别?

forward 和 redirect 的区别?

tcp 和 udp 的区别?

tcp 为什么要三次握手,两次不行吗?为什么?

tcp 粘包是怎么产生的?

OSI 的七层模型有哪些?

get 和 post 请求有哪些区别?

如何实现跨域?

JSONP 实现原理?

 

安全:

如何避免 sql 注入?

什么是 XSS 攻击,如何避免?

什么是 CSRF 攻击,如何避免?

 

设计模式:

常用的设计模式?

简单工厂和抽象工厂有什么区别?

 

Spring框架:

为什么要使用 spring 框架?

什么是 aop?

什么是 ioc?

spring 有哪些主要模块?

spring 常用的注入方式有哪些?

spring 中的 bean 是线程安全的吗?

spring 支持几种 bean 的作用域?

spring 自动装配 bean 有哪些方式?

spring 事务实现方式有哪些?

介绍一下 spring mvc

spring mvc 运行流程?

spring mvc 有哪些组件?

@RequestMapping 的作用是什么?

@Autowired 的作用是什么?

什么是 spring boot?为什么要用?

spring boot 核心配置文件是什么?

spring boot 有哪些方式可以实现热部署?

 


【Java面试题与答案】整理推荐

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140599.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 安卓系统文件夹及其文件解析[通俗易懂]

    安卓系统文件夹及其文件解析[通俗易懂]安卓系统文件夹及其文件解析打开Android文件管理器,会发现里面数十个英文名称命名的文件夹罗列其中,很多功能我们可以从其名字上略有所知,内部大批量的文件却让我们有些一头雾水。这些文件是什么?有什么用?我们能不能删?这些都是我们脑中充满疑问的。现在将将An…

    2025年11月10日
    4
  • 从零开始学习UCOSII操作系统12–内存管理

    从零开始学习UCOSII操作系统12–内存管理从零开始学习UCOSII操作系统12–内存管理前言:在标准的C语言中,可以用malloc()和free()2个动态的分配内存和释放内存,但是在嵌入式中,调用malloc()和free()却是非常危险的。因为多次调用这两个函数,会把原来的很大的一块连续的内存区域逐渐的分割成许多非常小的而且彼此又不相邻的内存块,也就是所谓的内存碎片。这样子的话,使得程序后面连一段非常小的内存都分

    2022年5月4日
    96
  • PHP网站从Apache转移到Nginx后产生404错误的原因和解决办法

    PHP网站从Apache转移到Nginx后产生404错误的原因和解决办法

    2021年10月9日
    87
  • idea搭建vue(使用VUE打开一个项目)

    使用IDEA创建咱们的第一个VUE项目最近在学习VUE,想着使用vscode、hbulider、webstorm这些软件学习,但听前端前辈们说要很多插件什么的等等等!听完咱还是选择IDEA吧,毕竟和IDEA还是很亲近的!1.安装环境–让VUE‘顺产’(1)安装node.js至于为什么安装大家可以看看前辈们的博客哦!1.先让IDAE准备准备(迎接VUE)~~~提示:这里可以添加要学的内容例如:1、搭建Java开发环境2、掌握Java基本语法3、掌握条件语句4、掌握循环

    2022年4月14日
    298
  • mt4接入python_mt4 调用 api「建议收藏」

    mt4接入python_mt4 调用 api「建议收藏」python与matlab混编用于Python的MATLAB引擎API快速入门安装用于Python的MATLAB引擎APIMatlab的官方文档中介绍了Matlab与其余编程语言之间的引擎接口,其中包括对于Python开放的引擎API,可参考官方教程,其中包括引擎安装,基本使用,以及Pyth…文章刘新伟2018-06-112307浏览量JVM–方法调用版…

    2022年8月15日
    19
  • NP-Hard问题浅谈

    NP-Hard问题浅谈看相关算法的paper的时候,经常会出现NP-Hard这个词。本博主也不是纯数学系出身,对于这么高深的问题自然没有特别深入独到的理解。但是本博主的习惯就是看到一个东西老在眼前晃来晃去但自己还不是很明白,就有强迫症一定要搞明白这到底是个什么玩意。so,咱们就来看看这个NP-Hard问题,怎么用最简单的方式去了解。1.世界七大数学难题之首2000年,美国克莱数学研究所公布了世界七大数学难题,又称千禧年大

    2025年11月10日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号