根据提供的信息,我们可以总结出以下关于“JAVA记事本”的相关知识点:
### 1. JAVA记事本项目概述
此JAVA记事本程序是一个简单的文本编辑器应用,它使用了Swing组件库来构建用户界面,并实现了基本的功能,如新建、打开、保存文件等。
### 2. 代码结构与组成部分
#### 2.1 主类 `jishiben`
- **功能**:程序的入口点,负责初始化`TextEdit`对象。
- **关键代码**:
```java
public static void main(String args[]) {
TextEdit TE = new TextEdit("±");
}
```
#### 2.2 `TextEdit` 类
- **继承自**:`Frame` 类,表示这是一个基于Swing的窗口。
- **实现接口**:`ActionListener` 接口,用于响应用户的动作事件。
- **功能**:
- 创建菜单栏、菜单项及文本区域。
- 设置窗口大小并使其可见。
- 注册动作监听器。
- 实现基本的文件操作功能(新建、打开、保存)及编辑功能(剪切、复制、粘贴)。
#### 2.3 关键组件
- **MenuBar** (`m`):菜单栏容器。
- **Menu** (`m1`, `m2`):子菜单,分别用于文件操作和编辑操作。
- **MenuItem** (`xinjian`, `dakai`, `baocun`, `tuichu`, `jianqie`, `fuzhi`, `zhantie`):具体的菜单项,每个菜单项都注册了相应的动作监听器。
- **TextArea** (`text`):文本显示区域,用户可以在其中输入或编辑文本。
- **FileDialog** (`openFD`, `saveFD`):用于处理文件打开和保存对话框。
- **BufferedReader/BufferedWriter** (`in`, `out`):用于读取和写入文件。
- **FileReader/FileWriter** (`read`, `writer`):辅助类,用于文件读写。
- **Clipboard** (`cb`):用于实现剪切板功能。
### 3. 功能实现
#### 3.1 文件操作
- **新建** (`xinjian`):清空当前文本区域的内容。
- **打开** (`dakai`):通过文件选择对话框让用户选择文件,然后将文件内容加载到文本区域。
- **保存** (`baocun`):将文本区域的内容保存到指定的文件。
- **退出** (`tuichu`):关闭应用程序。
#### 3.2 编辑操作
- **剪切** (`jianqie`):将选中的文本移到剪切板。
- **复制** (`fuzhi`):将选中的文本复制到剪切板。
- **粘贴** (`zhantie`):将剪切板的内容粘贴到文本区域的光标位置。
### 4. 关键技术点
- **Swing组件库**:Java Swing是一组用于创建图形用户界面(GUI)的轻量级组件,它们是在AWT组件基础上构建的。Swing提供了更多的灵活性和可定制性。
- **事件处理**:通过实现`ActionListener`接口,可以为各种GUI组件注册监听器,当用户触发特定事件时执行相应的代码。
- **文件I/O操作**:利用`BufferedReader`和`BufferedWriter`进行文件的读写操作。
- **剪切板操作**:使用`Clipboard`类实现文本的复制、剪切和粘贴功能。
### 5. 总结
这个简单的JAVA记事本项目展示了如何使用Swing构建基本的文本编辑器,并实现了一些基本的文件操作和编辑功能。对于初学者来说,它是学习Swing和Java文件I/O操作的一个很好的起点。