Java 实验报告——简单计算器的编写
在本次实验中,我们主要目的是学习和掌握Java图形用户界面(GUI)的设计和编程技巧。实验的目标包括:
1. **理解Java GUI设计的基本原理**:Java GUI允许开发者创建丰富的用户交互界面,通过AWT(Abstract Window Toolkit)和Swing库提供组件和布局管理器。
2. **编写符合需求的GUI程序**:设计一个简单的计算器界面,包括数字按钮、运算符按钮、清除按钮以及显示区域。
3. **熟悉事件处理接口**:使用ActionListener接口处理用户与界面组件的交互,例如点击按钮。
4. **运用AWT和Swing组件**:AWT是Java的基础GUI库,Swing是在其基础上构建的更高级的图形库,提供了更多功能和更好的外观。
实验的具体实现步骤如下:
导入必要的Java类库,包括`java.awt.*`, `java.awt.event.*`, `javax.swing.*`。这些库包含了创建GUI所需的所有组件和事件处理机制。
接着,定义了一个名为`JCalculator`的类,它继承自`JFrame`并实现了`ActionListener`接口。`JFrame`是Swing中的顶级容器,用于构建窗口应用;`ActionListener`用于监听用户操作,如点击按钮。
在`JCalculator`类中,定义了一个内部类`WindowCloser`,它扩展了`WindowAdapter`,用于监听窗口关闭事件,当用户尝试关闭窗口时,调用`System.exit(0)`结束程序。
`str`数组包含了计算器上所有可能的数字和运算符,每个元素对应一个按钮。同时,创建了一个`buttons`数组来存储这些按钮实例。
`reset`按钮用于清除当前显示的数值,`display`字段是一个`JTextField`,用作计算器的显示屏。
在`JCalculator`构造函数中,创建了一个4x4的网格布局`GridLayout`的`JPanel`实例`panel1`,并将所有按钮添加到这个面板中。`JPanel``panel2`采用`BorderLayout`布局,中心位置添加`display`,东侧位置添加`reset`按钮。
将这两个面板添加到`JFrame`的相应位置,并为所有的按钮和`display`添加`ActionListener`,这样当按钮被点击或`display`接收到输入时,程序能够响应并执行相应的计算逻辑。
实验完成后,你将能够熟练地运用Java的GUI编程技术来创建具有用户交互功能的应用程序,如本例中的计算器。这不仅加深了对Java语言的理解,也增强了实际项目开发能力。