Java中的一个源文件多个类的使用示范

在Java编程中,通常我们会将每个公共类放在单独的文件中,文件名必须与类名相同。然而,Java 允许在单个源文件中定义多个类。这种特性对于创建小型程序或封装相关类非常有用。本文将通过一个示例来探讨这一特性,并展示如何在一个源文件中定义多个类。

基础知识

在Java中,每个类可以包含变量、方法和构造函数。类还可以具有访问修饰符,如publicprivateprotected等,来控制类的访问级别。值得注意的是,一个源文件中可以包含多个非公共类,而公共类则必须是唯一的并且与源文件的名称相同。

代码示例

接下来,我们将创建一个名为 ExampleClasses.java 的源文件,其中包含三个类:MainClassCalculatorHelperMainClass 是公共类,其他两个类是非公共类。

以下是 ExampleClasses.java 的代码:

// 保证文件名为 ExampleClasses.java
public class MainClass {
    public static void main(String[] args) {
        Calculator calc = new Calculator();
        int sum = calc.add(5, 10);
        System.out.println("5 + 10 = " + sum);
        
        Helper helper = new Helper();
        helper.printMessage("这是一个示例代码");
    }
}

class Calculator {
    public int add(int a, int b) {
        return a + b;
    }
}

class Helper {
    public void printMessage(String message) {
        System.out.println(message);
    }
}

代码解析

在上面的代码中,我们定义了三个类:

  1. MainClass:公共类,其中包含 main 方法,程序的入口点。
  2. Calculator:一个简单的类,用于执行加法运算。
  3. Helper:用于输出消息的辅助类。

main 方法中我们创建了 CalculatorHelper 的实例,并调用它们的方法。程序输出如下:

5 + 10 = 15
这是一个示例代码

状态图示例

我们可以通过状态图来演示 MainClass 的执行流程。在这个状态图中,我们展示了程序的主要状态和转换。以下是用 Mermaid 语法编写的状态图:

stateDiagram
    [*] --> Start
    Start --> Add: Create Calculator
    Add --> PrintMessage: Create Helper
    PrintMessage --> End: Finished

状态图解析

在这个状态图中,程序的执行流程如下所示:

  1. 开始 状态:程序启动。
  2. 创建计算器 状态:实例化 Calculator 类,用于做加法运算。
  3. 创建助手 状态:实例化 Helper 类,用于输出消息。
  4. 结束 状态:程序执行完毕。

总结

通过在一个源文件中定义多个非公共类,Java 提供了极大的灵活性。这种方式让程序员可以将相关类组织在一起,便于管理和维护。虽然在实际开发中,通常会更倾向于将每个公共类放在独立的文件中,但使用一个文件包含多个类的方式在一些小型项目或练习中非常实用。

希望通过本文的示例和解释,您能对 Java 中一个源文件多个类的使用有更深入的理解。掌握这一特性,将有助于您在日常编程中更灵活地组织代码结构。