266 次浏览
异常是在程序执行期间发生的运行时错误。当发生异常时,程序会突然终止,异常行之后的代码永远不会执行。每个异常都由其相应的类表示。NoSuchElementException 这是一个运行时异常,即它发生在执行时。当使用 Enumeration、Iterator 或 tokenizer(例如 next() 或 nextElement())的访问器方法访问集合、数组或其他对象的内容时,如果尝试从空对象获取元素,或者尝试获取…… 阅读更多
2K+ 次浏览
异常是在程序执行期间发生的运行时错误。为了理解,让我们以不同的方式来看待它。通常,当您编译程序时,如果它编译成功,将创建一个 .class 文件,这是 Java 中的可执行文件,并且每次执行此 .class 文件时,它都应该成功运行,而不会出现任何问题地执行程序中的每一行。但是,在某些特殊情况下,在执行程序时,JVM 会遇到一些不明确的场景,它不知道该怎么办。以下是一些示例场景:如果…… 阅读更多
1K+ 次浏览
每当您需要创建一个在初始化后无法更改的对象时,您可以定义一个不可变对象。创建不可变对象没有具体的规则,其思想是在初始化后限制对类字段的访问。集合是集合框架中的一个接口,不允许重复的值。创建不可变集合时,需要注意以下几点:我们不应该能够向其中添加或删除元素。我们不应该能够向不可变集合中添加空值。一旦创建了不可变集合,就不能添加…… 阅读更多
656 次浏览
在大多数情况下,如果您尝试使用 java.io 包的类向文件写入内容,则该文件将被覆盖,即文件中的现有数据将被擦除,并将新数据添加到其中。但是,在某些情况下,例如将异常记录到文件(不使用日志框架)中,您需要在文件的下一行追加数据(消息)。您可以使用 java.nio 包的 Files 类来实现此目的。此类提供了一个名为 write() 的方法,它接受一个代表文件的 Path 类对象。一个保存数据的字节数组…… 阅读更多
public static void main(String args[]) 是 Java 程序的入口点。每当您执行程序时,JVM 都会搜索 main 方法并开始执行其内容。如果找不到此方法,则程序将成功执行,但是当您执行程序时,它会生成错误。事实上,如果您更改任何内容,则应将 main 方法声明为 public static 修饰符、void 返回类型和 String 参数,JVM 不会将其视为入口点方法,并在运行时提示错误。因此,您不能更改返回类型…… 阅读更多
380 次浏览
每当您将方法设为 final 时,您就不能重写它,即您不能从子类为超类的 final 方法提供实现。也就是说,将方法设为 final 的目的是防止外部(子类)修改方法。但是,如果您尝试重写 final 方法,则会生成编译时错误。示例接口 Person{ void dsplay(); } 类 Employee 实现 Person{ public final void dsplay() { System.out.println("这是 Employee 类的 display 方法"); } } 类 Lecturer 扩展 Employee{ public void dsplay() { System.out.println("这是…… 阅读更多
9K+ 次浏览
Java 中的枚举 (enum) 是一种存储一组常量值的数据类型。您可以使用枚举来存储固定值,例如一周中的几天,一年中的月份等。您可以使用关键字 enum 后跟枚举的名称来定义枚举,如下所示:enum Days { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY } 与数组一样,枚举中的元素/常量使用从 0 开始的数字标识,在上面的示例中,日期使用数字标识,如下图所示:枚举中的整数元素否,我们可以…… 阅读更多
在编程中,为了保存数据成员,我们使用变量,在 Java 中,您可以声明三种类型的变量,即局部变量 - 在方法、构造函数或块内定义的变量称为局部变量。该变量将在方法内声明和初始化,并且当方法完成时,该变量将被销毁。实例变量 - 实例变量是类内的变量,但在任何方法之外。这些变量在类实例化时初始化。可以从该特定类的任何方法、构造函数或块内访问实例变量。类(静态)变量 - 类变量是在类内声明的变量,…… 阅读更多
在 Java 中,您可以声明三种类型的变量,即实例变量、静态变量和局部变量。局部变量 - 在方法、构造函数或块内定义的变量称为局部变量。该变量将在方法内声明和初始化,并且当方法完成时,该变量将被销毁。实例变量 - 实例变量是类内的变量,但在任何方法之外。这些变量在类实例化时初始化。可以从该特定类的任何方法、构造函数或块内访问实例变量。类(静态)变量 - 类变量是在类内声明的变量,…… 阅读更多
269 次浏览
有几个日志框架可用于将您的数据记录到文件中。您也可以定义自己的方法。在这两种情况下,要将当前时间添加到您的已记录异常中,您可以使用 LocalDateTime 类。它是一个不可变类,表示日期时间,它将日期时间存储为年-月-日-时-分-秒。此类的 now() 方法返回当前日期时间。使用此方法将当前日期和时间连接到您的异常消息,然后写入所需文件。示例 import java.io.FileOutputStream; import java.io.IOException; import java.time.LocalDateTime; import java.util.Arrays; import java.util.Scanner; public class LoggingToFile { private static void writeLogToFile(Exception e) throws IOException { ... 阅读更多