当前位置:文档之家› java课程设计论文

java课程设计论文

JAVA语言课程设计报告题目:设计者:专业班级:学号:指导教师:目录摘要 0一、系统概述 (2)二、系统需求分析 (2)2.1 需求分析 02.2 功能设计 0三、系统总体设计 (1)3.1程序设计思路 (1)3.2程序运行界面 (1)3.4系统数据流程图 (2)3.5程序相关说明 (2)四、系统详细设计 (4)4.1.初始化组件 (4)4.2.构建菜单栏及其下拉菜单 (4)4.3.“文件”菜单的事件监听 (5)4.4.“编辑”菜单的事件监听 (6)4.5.异常处理 (6)五、系统调试分析 (8)六、总结 (10)参考文献 (11)JAVA程序设计报告附:程序清单 (12)摘要现在网络上各种记事本软件数不胜数,功能也是应有尽有,有能改变字体的,有能改变颜色的。

但是,这些软件又存在各种各样的瑕疵或问题:有的文件体积相对于一般文字编辑来说太大;有的功能太繁琐,是初级使用者一时难以掌握,仅从日常应用方面来说,一个记事本只需一些简单实用的功能就够了。

本程序设计就是依照这样一种使用需求设计了一个的简单的记事本程序。

该程序报告里的程序是使用Java编写的,实现记事本的功能,参考windows中记事本的功能。

要求打开文件,读取文件中的文本信息。

显示、编辑修改文本信息。

Java 记事本采用的是JavaSE中的GUI和IO基本技术,可以实现文本的简单操作,如:打开文档、编辑文档、保存文档等。

AbstractNow all kinds of notepad software on the network, function also is everything, can change the font, can change the color. However, the software and all kinds of defects or problems: some file size is too large relative to the general text editor. Some function is too complicated, difficult to grasp is the primary users, only in daily application ways, a notepad just some simple and practical function is enough. This program is designed in accordance with such a demand by designing a simple notepad application.The procedures in the report is to use written in Java, we can realize the function of notepad, reference function of Windows notepad. Open the file, read the text in the file information. Display, edit text information. Java notepad is a GUI and IO in JavaSE basic technique, can realize the text simple operations, such as: open the document, edit the document, save the document, etc.一、系统概述1.1项目背景目前,很多新的技术领域都涉及到了Java语言,Java语言是面向对象编程,并涉及到网络、多线程等重要的基础知识,因此Java语言也是学习面向对象编程和网络编程的首选语言。

按照教学培养计划要求,学生在学习完课本中指定课时的知识后,应安排一定课时的课程设计。

其主要目的是使学生深入理解并实践在本课程中所学的有关java程序设计方面的语言基础、异常处理、事件处理、小应用程序以及图形用户界面设计等。

故此“java记事本”应运而生。

1.2任务目标Java记事本程序主要是对文字进行编辑处理的软件。

能进行新建、打开、保存等功能。

另外还可以根据用户的需要复制剪切相应的文字,实现编辑功能。

本课程设计是为了配合Java程序设计课程,通过面向对象程序设计对自己所学过的的知识加以掌握和运用,使学生深入学习掌握Java语言,熟练运用这个工具而设立的课程。

通过课程设计各个项目的综合训练,加强学生对JAVA语言的理解,检验学生对专业理论知识理解与掌握的程度,锻炼学生综合运用JAVA程序设计处理所学的知识实际分析问题、解决问题的能力,使课堂上的理论在实践中得到运用,提高学生的综合素质,为学生毕业后的实际工作打好基础。

1.3开发意义随着计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。

当然对文本编辑操作仍然占据着重要地位,记事本是简单便捷的文本编辑器,可实现对文本编辑操作的基本功能。

二、系统需求分析2.1 需求分析现在网络上各种文档编辑器数不胜数,有EmEditor ,UEStudio ,GridinSoft Notepad ,Notepad++,win32pad ,SkimEdit,UniRed, xint 。

功能也是应有尽有,有能改变字体的,有能改变文字颜色的。

但是,这些软件又存在各种各样的瑕疵或问题:有的文件体积相对于一般文字编辑来说太大;有的功能太繁杂,使初级使用者一时难以掌握。

仅从日常应用方面来说,一个文本编辑器只需一些简单实用的功能就够了。

本程序设计就是依照这样一种使用需要设计了一个的记事本程序。

2.2 功能设计本程序要构建的记事本程序参照了Windows操作系统的记事本工具,其功能有以下几个方面:(1)菜单中有“文件”,“编辑”两个主菜单。

(2)“文件”有“新建”“打开”“保存”“另存为”“退出”五个子菜单:分别用于新建文件,打开文件,保存文件,另存为文件,退出记事本。

(3)“编辑”中有“全选”“复制”“剪切”“粘贴”四个子菜单:用于全选文字,复制文字,剪切文字,粘贴文字。

三、系统总体设计3.1程序设计思路在本程序中,设计了一个菜单栏和文本内容区。

设计过程中用到了JScrollPane,JMenu,JTextPane,JFileChooser等。

JMenu用来制作菜单,菜单包括“文件”“编辑”“关于”。

JTextPane主要用来输入文本。

为了加入颜色的设置,所以加了一个JColorChooser组件。

3.2程序运行界面图1:程序运行界面图2:系统功能结构图3.4系统数据流程图图3:系统数据流程图3.5程序相关说明整个记事本分为2快:菜单栏和内容输入区。

本程序中首先定义一个mynotepad类继承JFrame作为最底层容器。

(1).Textcontent为程序文本输入区。

(2).Menu为菜单栏。

(3).AboutDialog为关于对话框。

(4).要想记事本完成需求分析中相应的功能,还必须添加事件监听器。

事件监听器不仅要添加在菜单栏和内容输入区,还需加在容器中。

本程序中ActListener实现了ActionListener接口,用来监听并处理所有菜单项和内容输入区为事件源的事件。

另外,还用来WindowListener来监听处理容器关闭触发的事件,WindowListener 继承了WindowsAdapter类并覆盖了WindowsClosing方法。

四、系统详细设计4.1.初始化组件initTextContent();initMenu();initAboutDialog();4.2.构建菜单栏及其下拉菜单JMenu[] menus=new JMenu[]{new JMenu("文件"),new JMenu("编辑"),new JMenu("关于")};J MenuItem optionofmenu[][]=new JMenuItem[][]{{ new JMenuItem("新建"),new JMenuItem("打开"),new JMenuItem("保存"),new JMenuItem("退出")},{new JMenuItem("复制"),new JMenuItem("剪切"),new JMenuItem("粘贴"),new JMenuItem("颜色")},{new JMenuItem("关于")}};4.3.“文件”菜单的事件监听ActionListener action=new ActionListener(){public void actionPerformed(ActionEvent e){String name = e.getActionCommand();JMenuItem MI=(JMenuItem)e.getSource();if("新建".equals(name)){content.setText("");file=null;}else if("打开".equals(name)){if(file !=null)openfile.setSelectedFile(file);int returnVal=openfile.showOpenDialog(mynotepad.this);if(returnVal==JFileChooser.APPROVE_OPTION){file=openfile.getSelectedFile();unfold();}}else if("保存".equals(name)){if(file!=null) openfile.setSelectedFile(file);int returnVal=openfile.showSaveDialog(mynotepad.this);if(returnVal==JFileChooser.APPROVE_OPTION){file=openfile.getSelectedFile();saving();}}else if("退出".equals(name)){mynotepad f=new mynotepad();int s=JOptionPane.showConfirmDialog(f,"退出?","退出",JOptionPane.YES_NO_OPTION);4.4.“编辑”菜单的事件监听else if("剪切".equals(name)){content.cut();}else if("复制".equals(name)){content.copy();}else if("粘贴".equals(name)){content.paste();}else if("颜色".equals(name)){color=JColorChooser.showDialog(mynotepad.this,"",color);content.setForeground(color);4.5.异常处理在运行程序代码是有可能会产生异常情况或异常事件,为了避免这种情况,就需要在程序中用到Java异常处理机制。

相关主题