[JAVA] 一个可以编辑、编译、运行Java简单文件的记事本java实现

简介:


本来是Java课做一个仿windows记事本的实验,后来突然脑子一热,结果就给它加了一个编译运行Java文件的功能。

本工程总共大约3000行代码,基本上把所学的java界面、文件、控件的功能都包含在内啦。除此之外俺还脑子一热给这个文本编辑器加了个可以编译运行java文件的功能,但是由于多线程还不咋滴,所以有些需要在DOS输入的java文件就无法运行啦。

现在过了一个寒假,好像有点忘了,所以拿出来研究一下,顺便写个博客,全做复习一下java啦,嘻嘻>_<!

 notepad包:

1、关于对话框 :介绍软件运行环境作者,版权声明。这里用JDialog便于生成模式窗口,用2个JButton一个是OK按钮,一个是无边框图标,用4个Jlable来显示文字(这里涉及字体颜色,字体设置)。更多介绍请看代码:(可单独运行)

  AboutDialog.java

2、颜色选择对话框: 主要为主窗口的文字的前景和背景颜色设置,主窗口的背景和选中时的背景颜色设置;其中第二个窗口负责选择颜色(也可直接输入RGB值)。这里窗口1上半部分主要由4个JLable用于文字显示,4个JButton用于分别功能选择,2个JTextArea用于显示效果;窗口2用了2维的按钮矩阵[16][16]来显示颜色。这里设置好的颜色值分别保存在public Color NFC,NBC,SFC,SBC;//4个颜色中,当其他函数调用时可以通过访问这些值来做相关操作;此外这里还把选择的数据保存在文件里了,刚开始初始化和数据改变都涉及文件操作。更多介绍请看代码:(可单独运行)

   

  ColorDialog.java

 3、确认对话框: 主要是在一些关键的步骤让用户确认是否进行操作的对话框。其选择的结果保存在state里面,外部函数可以访问这个值来查看用户的选择。更多介绍请看代码:(可单独运行)

  EnsureDialog.java

4、查找与替换对话框:主要负责查找与替换。其功能部分不在这里,这里只是界面部分。更多介绍请看代码:(可单独运行)

  FindAndReplace.java

 5、字体选择对话框:主要负责字体设置。更多介绍请看代码:(可单独运行)

  FontDialog.java

6、MenuList类:负责把menu的各个功能集成到这个类中单独处理,这样很方便对menu进行扩展(这里只是各个元件的组合,其监听实现不在这里,不能单独运行出现界面)

  MenuList.java

7、 TextArea类:主要的文本编辑区类,同时集成上面的menu类,基本构成该软件的主要界面和功能的封装。把menu的监听函数需要用的函数封装了一下。具体请看代码,不能单独运行出现界面:

  TextArea.java

8、Notepad类:主程序。实现各种监听。代码如下:

  Notepad.java

toolBarTest包

1、JToolBar类:主要是工具条的元件组合,监听在notepad类内实现。可单独运行查看效果:

  JToolBar.java

tongxunlu包:
主要是通讯录的各个功能实现:包括增加、删除、查找、替换....这个没怎么仔细加工,总之很水的,代码有点乱.... 
 

 

  MyAddBook.java
  people.java
  Print.java
  Search.java
  Typein.java

BianYi包:
Commond类:主要负责调用DOS窗口,进行编译、运行java文件,同时向DOS内读写数据,包括错误流。更多介绍请看代码(可以直接运行):

  Commond.java

App包:
主要是一些简单的功能:如回文串判断、数字翻译成英文...没啥技术含量.....

  CountString.java
  FQiuHe.java
  HuiWen.java
  NumExchangeEnglish.java



本文转自beautifulzzzz博客园博客,原文链接: http://www.cnblogs.com/zjutlitao/p/3497023.html ,如需转载请自行联系原作者
相关文章
|
1月前
|
Java
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
74 9
|
1月前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
76 2
|
1月前
|
Java
轻松上手Java字节码编辑:IDEA插件VisualClassBytes全方位解析
本插件VisualClassBytes可修改class字节码,包括class信息、字段信息、内部类,常量池和方法等。
115 6
|
17天前
|
Java
java实现从HDFS上下载文件及文件夹的功能,以流形式输出,便于用户自定义保存任何路径下
java实现从HDFS上下载文件及文件夹的功能,以流形式输出,便于用户自定义保存任何路径下
80 34
|
1月前
|
消息中间件 存储 Java
RocketMQ文件刷盘机制深度解析与Java模拟实现
【11月更文挑战第22天】在现代分布式系统中,消息队列(Message Queue, MQ)作为一种重要的中间件,扮演着连接不同服务、实现异步通信和消息解耦的关键角色。Apache RocketMQ作为一款高性能的分布式消息中间件,广泛应用于实时数据流处理、日志流处理等场景。为了保证消息的可靠性,RocketMQ引入了一种称为“刷盘”的机制,将消息从内存写入到磁盘中,确保消息持久化。本文将从底层原理、业务场景、概念、功能点等方面深入解析RocketMQ的文件刷盘机制,并使用Java模拟实现类似的功能。
42 3
|
1月前
|
Java 测试技术 Maven
Maven clean 提示文件 java.io.IOException
在使用Maven进行项目打包时,遇到了`Failed to delete`错误,尝试手动删除目标文件也失败,提示`java.io.IOException`。经过分析,发现问题是由于`sys-info.log`文件被其他进程占用。解决方法是关闭IDEA和相关Java进程,清理隐藏的Java进程后重新尝试Maven clean操作。最终问题得以解决。总结:遇到此类问题时,可以通过任务管理器清理相关进程或重启电脑来解决。
|
1月前
|
存储 缓存 安全
在 Java 编程中,创建临时文件用于存储临时数据或进行临时操作非常常见
在 Java 编程中,创建临时文件用于存储临时数据或进行临时操作非常常见。本文介绍了使用 `File.createTempFile` 方法和自定义创建临时文件的两种方式,详细探讨了它们的使用场景和注意事项,包括数据缓存、文件上传下载和日志记录等。强调了清理临时文件、确保文件名唯一性和合理设置文件权限的重要性。
96 2
|
1月前
|
存储 安全 Java
如何保证 Java 类文件的安全性?
Java类文件的安全性可以通过多种方式保障,如使用数字签名验证类文件的完整性和来源,利用安全管理器和安全策略限制类文件的权限,以及通过加密技术保护类文件在传输过程中的安全。
58 4
时间轮-Java实现篇
在前面的文章《[时间轮-理论篇](https://developer.aliyun.com/article/910513)》讲了时间轮的一些理论知识,然后根据理论知识。我们自己来实现一个简单的时间轮。
|
1天前
|
Java
Java—多线程实现生产消费者
本文介绍了多线程实现生产消费者模式的三个版本。Version1包含四个类:`Producer`(生产者)、`Consumer`(消费者)、`Resource`(公共资源)和`TestMain`(测试类)。通过`synchronized`和`wait/notify`机制控制线程同步,但存在多个生产者或消费者时可能出现多次生产和消费的问题。 Version2将`if`改为`while`,解决了多次生产和消费的问题,但仍可能因`notify()`随机唤醒线程而导致死锁。因此,引入了`notifyAll()`来唤醒所有等待线程,但这会带来性能问题。
Java—多线程实现生产消费者