
JAVA面试题
文章平均质量分 80
今天你慧了码码码码码码码码码码
路遥知马力
展开
-
【JAVA面试题】Spring、Spring MVC、Spring Boot、Spring Cloud的区别与联系
Spring:提供了IoC和AOP等核心功能,是企业级应用开发的基础。Spring MVC:基于Spring的Web框架,专注于Web应用开发。:简化了Spring应用的配置和开发,适合快速构建微服务。:基于Spring Boot的微服务治理框架,专注于分布式系统的开发和管理。如果是传统的Web应用,可以选择Spring + Spring MVC。如果是快速开发微服务,可以选择Spring Boot。如果是分布式系统,可以选择Spring Boot + Spring Cloud。原创 2025-03-05 10:40:55 · 2748 阅读 · 0 评论 -
【Java面试】重载(Overload)和 重写(Override)的区别
重载:发生在同一个类中,方法名相同但参数列表不同,与返回值类型和访问修饰符无关。重写:发生在父子类中,方法名、参数列表和返回值类型必须相同,访问修饰符不能更严格,抛出异常范围不能更大。理解重载和重写的区别,能够帮助我们在实际开发中更好地设计类和方法,同时也能在面试中从容应对相关问题。原创 2025-03-04 20:23:35 · 567 阅读 · 0 评论 -
【JAVA面试题】String、StringBuffer、StringBuilder的区别及使用场景
String:适用于字符串内容不经常变化的场景,如常量字符串、配置信息等。:适用于单线程环境下需要频繁修改字符串内容的场景,优先使用。:适用于多线程环境下需要频繁修改字符串内容的场景,特别是当多个线程共享同一个字符串变量时。String:不可变,线程安全,适合字符串内容不经常变化的场景。:可变,非线程安全,性能高,适合单线程环境下频繁修改字符串内容的场景。:可变,线程安全,性能稍低,适合多线程环境下频繁修改字符串内容的场景。原创 2025-03-04 20:09:20 · 373 阅读 · 0 评论 -
【JAVA面试题】为什么局部内部类和匿名内部类只能访问局部 final 变量?
在 Java 中,和是两种常见的内部类形式。它们可以直接访问外部类的成员变量和方法,但在访问时,有一个限制:只能访问被final修饰的局部变量。本文将从和两个方面,深入解析这一限制的原因。原创 2025-03-03 20:09:17 · 1102 阅读 · 0 评论 -
【JAVA面试题】final 关键字
在 Java 中,final是一个非常重要的关键字,用于表示。它可以修饰类、方法、变量等,具体作用因修饰对象的不同而有所差异。本文将从三个方面,详细解析final的作用和使用场景。原创 2025-03-03 19:57:00 · 592 阅读 · 0 评论 -
【JAVA面试题】== 和 equals() 的区别与使用场景
在 Java 面试中,==和equals()的区别是一个高频考点。理解它们的底层原理和使用场景,对于掌握 Java 基础知识至关重要。本文将从和三个方面,深入解析==和equals()的区别。原创 2025-03-03 19:12:56 · 1135 阅读 · 0 评论 -
【JAVA面试题】设计模式之原型模式
原型模式核心价值避免重复初始化,提升对象创建性能简化复杂对象创建流程深浅拷贝区别浅拷贝:复制值类型+引用地址(共享引用对象)深拷贝:完全复制值类型和引用对象(递归克隆)实现深拷贝的三种方式递归实现Cloneable(如本文示例)序列化/反序列化(实现Serializable)使用第三方库(Apache Commons Lang3)JDK中的原型应用注意事项深拷贝可能引发循环引用问题需要处理final字段的特殊情况考虑使用原型管理器管理多种原型。原创 2025-03-03 18:26:55 · 549 阅读 · 0 评论 -
【JAVA面试题】JDK、JRE、JVM 三者区别和联系
JDK:Java 开发工具包,包含 JRE 和开发工具,用于开发和编译 Java 程序。JRE:Java 运行时环境,包含 JVM 和核心类库,用于运行 Java 程序。JVM:Java 虚拟机,负责执行字节码,实现 Java 的跨平台特性。JDK是开发者的工具箱。JRE是程序运行的环境。JVM是程序执行的引擎。原创 2025-03-02 17:04:17 · 1242 阅读 · 0 评论 -
【JAVA面试题】什么是面向对象?谈谈你对面向对象的理解。
面向对象(Object-Oriented Programming,OOP)是一种编程范式,它将现实世界中的事物抽象为对象,并通过对象之间的交互来解决问题。与面向过程不同,面向对象更注重参与者(对象)以及它们各自的职责。面向对象是一种强大的编程思想,它将现实世界中的事物抽象为对象,并通过封装继承和多态三大特性,提高了代码的复用性扩展性和维护性。原创 2025-03-02 16:36:09 · 357 阅读 · 0 评论