Java 语言基础共59篇

Java 作为广泛应用的编程语言,基础扎实是后端开发的关键。Java 基础面试的重点知识点包括数据类型与运算符、字符串操作、异常处理、面向对象设计、类与接口的实现、集合框架的使用、多线程编程、JVM 运行原理以及 Java 8 的新特性。

面试题:Java 泛型擦除是什么?

Java中的泛型擦除(Generics Erasure)是Java编译器在处理泛型时采用的一种机制。这种机制主要源于Java的设计历史和向后兼容性的考虑。简单来说,泛型信息只存在于源代码级别,在编译成字节码时...
程序百科的头像-程序百科程序百科1年前
7410

面试题:JDK 和 JRE 有什么区别?

JDK 和 JRE 是 Java 平台的两个主要组件,它们各自有着不同的用途和功能。以下是它们之间的主要区别: JDK(Java Development Kit) 定义:JDK 是 Java 开发工具包,是为开发人员提供的一个环境...
程序百科的头像-程序百科程序百科1年前
7110

面试题:为什么 JDK 9 中将 String 的 char 数组改为 byte 数组?

在JDK 9中,String的内部表示从使用char[]数组改为使用byte[]数组,这一改变主要是为了优化内存使用和提高性能。 具体来说,之前的String实现使用的是char[]数组,每个字符占用2个字节(16位)...
程序百科的头像-程序百科程序百科1年前
9510

面试题:什么是 Java 的 SPI(Service Provider Interface)机制?

Java的SPI(Service Provider Interface)机制是一种服务发现机制,它提供了一种服务接口与具体实现解耦的方式,允许第三方为这些接口提供实现。简单来说,SPI是一种动态发现和加载服务提供者(...
程序百科的头像-程序百科程序百科1年前
6910

面试题:Java 中包装类型和基本类型的区别是什么?

在 Java 中,基本类型(Primitive Types)和包装类型(Wrapper Classes)都用于存储数值数据,但它们之间存在一些关键的区别。以下是基本类型与对应的包装类型的对比及其主要区别: 基本类型 定...
程序百科的头像-程序百科程序百科1年前
569

面试题:什么是 Java 中的自动装箱和拆箱?

在Java中,自动装箱(Autoboxing)和拆箱(Unboxing)是Java编译器提供的两种便利机制,用于简化基本数据类型与它们对应的包装类之间的转换过程。 自动装箱(Autoboxing) 定义:自动装箱是指将...
程序百科的头像-程序百科程序百科1年前
719

面试题:什么是 Java 内部类?它有什么作用?

在 Java 中,内部类(Inner Class)是指定义在另一个类内部的类。内部类提供了将逻辑紧密相关的类组织在一起的方式,并且可以访问外部类的所有成员,包括私有成员。根据其定义和使用方式的不同...
程序百科的头像-程序百科程序百科1年前
759

面试题:栈和队列在 Java 中的区别是什么?

栈(Stack)和队列(Queue)是两种常见的数据结构,它们在处理元素的添加和移除时遵循不同的原则。在Java中,这两种数据结构的区别主要体现在以下几个方面: 操作规则: 栈是一种后进先出(LIFO...
程序百科的头像-程序百科程序百科1年前
619

面试题:你认为 Java 的优势是什么?

Java 自诞生以来,一直是世界上最流行、最广泛使用的编程语言之一,尤其在企业级开发、大型系统、Web 应用和 Android 开发中占据主导地位。它的成功并非偶然,而是源于其一系列独特的优势。以下...
程序百科的头像-程序百科程序百科1年前
629

面试题:Java 中 Exception 和 Error 有什么区别?

在 Java 中,Exception 和 Error 都是 Throwable 类的直接子类,它们都用于表示程序运行期间发生的异常情况。尽管它们有相似之处,但各自代表了不同类型的异常状况,并且在处理方式上也有所区别...
程序百科的头像-程序百科程序百科1年前
538