Java 语言基础共59篇

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

面试题:Java 中 for 循环与 foreach 循环的区别是什么?

在Java中,for循环和foreach循环(也称为增强型for循环)是两种不同的循环结构,它们各自有特定的使用场景和特点。以下是这两种循环的主要区别: 1. 语法形式 传统for循环: for (初始化; 布尔...
程序百科的头像-程序百科程序百科1年前
1456

面试题:如果一个线程在 Java 中被两次调用 start() 方法,会发生什么?

直接答案 会抛出 IllegalThreadStateException 异常。在 Java 中,一个线程对象只能被启动(start)一次,重复调用 start() 方法是非法操作。 详细解释 1. 线程生命周期状态 线程在被...
程序百科的头像-程序百科程序百科1年前
13511

面试题:什么是 Selector?

在Java中,Selector(选择器)是java.nio.channels包的一部分,它提供了一种高效的机制用于管理多个Channel(通道)的事件。简单来说,Selector允许单线程处理多个网络连接。
程序百科的头像-程序百科程序百科1年前
13213

面试题:Java 的 StringBuilder 是怎么实现的?

StringBuilder 是 Java 中用于高效拼接字符串的一个可变序列类,位于 java.lang 包中。它通过减少创建中间的 String 对象来提高性能,特别是在需要进行大量字符串操作的场景下。以下是 StringBu...
程序百科的头像-程序百科程序百科1年前
10515

面试题:什么是 BIO、NIO、AIO?

BIO、NIO和AIO代表了Java中不同类型的I/O模型,它们各自针对不同的应用场景提供了不同的解决方案。理解这三种模型的区别对于开发高效的应用程序至关重要。 1. BIO(Blocking I/O,阻塞I/O) 概...
程序百科的头像-程序百科程序百科1年前
10413

面试题:如何在 Java 中调用外部可执行程序或系统命令?

在 Java 中,可以使用 java.lang.Runtime 类或 java.lang.ProcessBuilder 类来调用外部可执行程序或系统命令。这两种方式都可以执行系统命令、启动外部程序,并获取其输入输出流和退出码。 ✅ ...
程序百科的头像-程序百科程序百科1年前
1027

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

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

面试题:什么是 Java 的网络编程?

Java的网络编程是指利用Java语言提供的API进行网络通信的过程。通过网络编程,Java应用程序可以与其他运行在网络中的程序或服务进行数据交换。Java提供了丰富的类库支持不同层次的网络编程,使...
程序百科的头像-程序百科程序百科1年前
9014

面试题:Java 的 I/O 流是什么?

在Java中,I/O流(Input/Output Streams)是用于处理输入输出操作的基础工具。它们提供了一种统一的方式来读取和写入不同类型的资源,如文件、网络连接或内存缓冲区。通过使用流,Java程序可以...
程序百科的头像-程序百科程序百科1年前
8812

面试题:Java 中静态方法和实例方法的区别是什么?

在Java中,静态方法和实例方法是两种不同类型的方法,它们在定义、调用方式以及使用场景上都有显著的区别。以下是它们之间的主要差异: 1. 定义与声明 静态方法:使用static关键字来声明。这意...
程序百科的头像-程序百科程序百科1年前
8813