java课设记事本说明书
java课程设计报告记事本
java课程设计报告记事本一、教学目标本课程旨在通过学习Java编程语言,使学生掌握Java编程的基本语法、面向对象编程思想,以及常用数据结构和算法。
通过本课程的学习,使学生能够独立完成简单的Java程序,培养学生的编程能力和逻辑思维能力。
同时,通过实践操作,使学生掌握Java开发工具的使用,提高学生的动手能力。
在学习过程中,培养学生积极思考、合作探讨的学习态度,提高学生的自主学习能力。
二、教学内容本课程的教学内容主要包括Java基本语法、数据类型、运算符、控制结构、数组、字符串、面向对象编程、异常处理、文件操作、集合框架、多线程编程等。
具体到教材,我们将按照教材的章节顺序进行教学,每个章节都会讲解相应的知识点,并通过实例进行讲解和演示。
在讲解过程中,我们会结合实际的编程案例,使学生能够更好地理解和掌握Java编程的知识。
三、教学方法为了提高教学效果,我们将采用多种教学方法进行教学。
首先,通过讲授法,向学生传授Java编程的基本知识和技巧。
其次,通过讨论法,引导学生进行思考和讨论,培养学生的逻辑思维能力。
再次,通过案例分析法,让学生通过分析实际案例,掌握Java编程的实际应用。
此外,我们还会安排实验课,让学生亲自动手编写代码,提高学生的动手能力。
通过多种教学方法的运用,激发学生的学习兴趣,提高学生的学习主动性。
四、教学资源为了保证教学质量,我们将准备丰富的教学资源。
教材和参考书将作为主要的学习材料,我们将选择内容丰富、讲解详细的教材和参考书。
此外,我们还会收集和整理多媒体教学资料,如教学视频、PPT课件等,以丰富教学手段,提高学生的学习兴趣。
在实验课上,我们将使用实验室的计算机进行教学,并配备相应的实验设备,以保证学生能够顺利进行实验操作。
五、教学评估为了全面、客观地评估学生的学习成果,我们将采取多种评估方式。
首先,通过平时表现评估,观察学生在课堂上的参与程度、提问回答等情况,了解学生的学习态度和理解能力。
JAVA课程设计记事本(含代码)
Java程序课程设计任务书一、主要任务与目标1.掌握java语言,能够学会使用JCreator开发具体的软件。
2.使用所学知识开发一个基于Java的记事本。
二、主要内容与基本要求本程序在执行后应能处理文本编辑的一些基本功能。
根据记事本的特点,程序主要功能设计有:打开文件,读取文件中的文本信息:对原有文件可实行打开操作,并能读取文件中的内容,以方便对文件的查看,修改等任务。
显示、编辑修改文本信息:记事本对文字信息的主要处理功能。
可对相关信息进行复制,剪切,粘贴等操作。
实现新建、保存文本文件:新建文本可以使用户写入新的信息,文件保存后再次打开仍可获得原有信息。
三、计划进度1.12月28日-- 12月28日:搜集资料、查阅文献,确定选题2.12月29日-- 12月30日:需求分析,系统设计,系统功能模块完善3.1月1日-- 1月3日:编程实现系统、系统测试与修改4.1月4日-- 1月5日:课程设计报告撰写5.1月6日-- 1月7日:课程设计报告答辩四、主要参考文献(1)洪维恩何嘉 java 2面向对象程序设计. 中国铁道出版社,2004.2(2)耿祥义张跃平 Java大学实用教程(第2版).电子工业出版社,2008.5(3)孙全党王吴迪赵枫朝 Java程序设计应用教程,电子工业出版社,2006.2摘要随时着科学技术的快速发展,计算机程序设计早已成为了趋势,JAV A是计算机专业的核心课程,是计算机科学的算法理论基础和软件设计的技术基础。
JA VA是实践性很强的课程。
课程设计是加强实践能力的一个强有力手段。
要求掌握JA V A的应用、编写、上机调试的基本方法。
本课程设计就是主要利用java 语言编写的一个模仿windows 记事本的较简单的程序,它能实现打开文件,读取文件中的文本信息;显示、编辑修改文本信息;实现新建、打开、保存文本文件以及控制保存文本信息到指定的文件的一些基本功能。
该记事本是一个基于JCreator的应用程序。
简易记事簿JAVA课设说明书
2016届课程设计《简易记事本》课程设计说明书学生姓名谭全全学号5011212506所属学院信息工程学院专业计算机科学与技术班级计算机16-5指导教师高贤强教师职称讲师塔里木大学教务处制塔里木大学课程设计任务书课程名称:Java程序设计课程所属教研室:计算机系指导教师:高贤强学号5011212506学生姓名谭全全(专业)班级计算机16-5 设计题目简易记事本设计技术内容1.掌握Java语言的程序设计方法;2.理论联系实际,进一步提高学生的软件开发技术;3.培养学生分析、解决问题的能力;4.提高学生实践论文撰写能力。
设计要求1.熟悉Java开发环境,掌握Java程序的编译和运行;2.掌握Java基本编程技术和方法;3.了解异常处理机制。
参考资料1.丁振凡主编。
Java语言实用教程【M】。
北京邮电大学出版社2004.122.丁振凡主编。
Java语言实用教程实验指导【M】。
北京邮电大学出版社 2004.12周次第一周第二周应完成内容1.准备阶段:选择设计题目、了解设计目的的要求、查阅相关资料2.程序魔窟啊设计分析阶段:程序总体设计、详细设计3.代码编写调试阶段:程序模块代码编写、调试、测试4.撰写论文阶段:总结课程设计任务和设计内容,撰写课程设计论文指导教师签字教研室主任签字说明:1、此表一式三份,院、学科组、学生各一份。
2、学生那份任务书要求装订到课程设计报告前面。
目录前言 (1)正文 (1)1.设计的目的和意义; (1)2.目标和总体方案; (1)2.1总体方案: (1)3.设计方法和内容; (2)3.1需求分析 (2)3.2功能设计 (2)3.3 程序设计思路 (2)3.4总体设计 (2)课设总结 (8)致谢 (9)参考文献: (10)附录: (11)前言Java语言程序设计是一门实践性很强的软件设计课程,是继PASCAL语言之后的又一门优秀的课程教学语言,并且是教学需要与实际应用相结合的一门语言。
《Java》课程设计》记事本
《Java课程设计》记事本课程设计报告书目录一、设计课题二、设计目的三、操作环境四、设计场所(机房号、机器号或自己机器)五、设计过程(设计内容及主要程序模块)六、本次设计中用到的课程知识点(列出主要知识点)七、设计过程中遇到的问题及解决办法八、程序清单五、设计过程(设计内容及主要模块,不少于3000字)1.设计要求1)界面设计2)功能实现(1)文件菜单:新建、打开、保存、另存为、退出等。
(2)其中新建菜单项可以新建一个记事本程序;打开菜单项可以打开一个用户指定的文本文件,并将其内容显示在记事本的文本区域;保存和另存为菜单项可分别实现文件的保存和另存为3)编辑菜单:复制、剪切和粘贴等4)帮助菜单:软件版本信5)右键弹出快捷菜单2.总体设计1)功能模块图:图一功能模块图2)功能描述1、打开记事本。
首先是标准型的记事本,拥有文件、编辑。
格式和帮助。
如图1所示:图1标准型记事本界面2、在标准型的记事本界面中,进行的新建一个本件名字叫新记事本。
如图2记事本文件帮助新建打开保存另存为退出复制剪切粘贴编辑关于记事本右键快捷格式字体颜色图2新建记事本功能3、用打开文件打开刚刚新建的新记事本。
如图三所示。
图3—打开文件4、点击退出即可退出,如图4所示:图4—退出记事本5、点击帮助可以看到有关记事本的相关信息,其中有作者名、版本、许可条款、隐私声明等必要信息。
如图5所示:图5—帮助相关信息6、右键可实现复制、粘贴、剪切、清除等常用功能,方便用户可以快捷方便的使用记事本。
如图6所示:图6—右键功能7、编辑也可实现制、粘贴、剪切、清除等常用功能,方便用户选择自己适合的方式,自由选择方便的快捷方式使用。
如图7:图7—编辑八、程序清单package test;import java.io.File;import java.io.*;import java.awt.event.*;import java.awt.Toolkit;import java.awt.*;import javax.swing.*;import javax.swing.filechooser.*;public class Notebook extends JFrame implements ActionListener,ItemListener{ //组件创建JButton b_save,b_close; //按钮JTextArea textArea; //文本框File tempFile; //文件JPanel jp; //面板JMenu file,edit,style,help; //菜单JMenuItemf_new,f_open,f_save,f_close,f_saveas,e_copy, e_paste,e_cut,e_clear,e_selectAll,e_find,e_rep lace,s_font,s_color,h_editor,h_help; //菜单条JMenuBar jmb;JScrollPane jsp; //滚动面板JPopupMenu popUpMenu = new JPopupMenu(); //右键弹出式菜单JLabel stateBar;//标签JLabel jl,jj;JFileChooser jfc = new JFileChooser(); //文件选择JMenuItemje_copy,je_paste,je_cut,je_clear,je_selectAll,je _find,je_replace; //弹出式菜单条public Notebook(){jfc.addChoosableFileFilter(new FileNameExtensionFilter("文本文件(*.txt)","txt"));jmb = new JMenuBar();textArea = new JTextArea();jsp = new JScrollPane(textArea);file = new JMenu("文件");edit = new JMenu("编辑");style = new JMenu("格式");help = new JMenu("帮助");je_copy = new JMenuItem("复制(C) ");je_paste = new JMenuItem("粘贴(P) ");je_cut = new JMenuItem("剪切(X) ");je_clear = new JMenuItem("清除(D) ");je_selectAll = new JMenuItem("全选(A) ");je_find = new JMenuItem("查找(F) ");je_replace = new JMenuItem("替换(R) ");je_copy.addActionListener(this); //给弹窗式的各组件添加监听器je_paste.addActionListener(this);je_cut.addActionListener(this);je_clear.addActionListener(this);je_selectAll.addActionListener(this);je_find.addActionListener(this);je_replace.addActionListener(this);//给界面上方的菜单条添加监听器f_new = new JMenuItem("新建(N)");f_new.setAccelerator(KeyStroke.getKeyS troke('N',InputEvent.CTRL_MASK,false)); //设置带修饰符快捷键f_new.addActionListener(this);f_open = new JMenuItem("打开(O)");f_open.setAccelerator(KeyStroke.getKey Stroke('O',InputEvent.CTRL_MASK,false));f_open.addActionListener(this);f_save = new JMenuItem("保存(S)");f_save.setAccelerator(KeyStroke.getKey Stroke('S',InputEvent.CTRL_MASK,false));f_save.addActionListener(this);f_saveas = new JMenuItem("另存为");f_saveas.setAccelerator(KeyStroke.getKe yStroke(KeyEvent.VK_S,InputEvent.CTRL_ MASK|InputEvent.SHIFT_MASK));f_saveas.addActionListener(this);f_close = new JMenuItem("退出(W)");f_close.setAccelerator(KeyStroke.getKey Stroke('W',InputEvent.CTRL_MASK,false));f_close.addActionListener(this);e_copy = new JMenuItem("复制(C)");e_copy.setAccelerator(KeyStroke.getKey Stroke('C',InputEvent.CTRL_MASK,false));e_copy.addActionListener(this);e_paste = new JMenuItem("粘贴(V)");e_paste.setAccelerator(KeyStroke.getKeyStro ke('V',InputEvent.CTRL_MASK,false));e_paste.addActionListener(this);e_cut = new JMenuItem("剪切(X)"); e_cut.setAccelerator(KeyStroke.getKeyStroke ('X',InputEvent.CTRL_MASK,false));e_cut.addActionListener(this);e_clear = new JMenuItem("清除(D)");e_clear.setAccelerator(KeyStroke.getKeyStrok e('D',InputEvent.CTRL_MASK,false));e_clear.addActionListener(this);e_selectAll = new JMenuItem("全选(A)");e_selectAll.setAccelerator(KeyStroke.getKey Stroke('A',InputEvent.CTRL_MASK,false));e_selectAll.addActionListener(this);e_find = new JMenuItem("查找(F)");e_find.setAccelerator(KeyStroke.getKeyStrok e('F',InputEvent.CTRL_MASK,false));e_copy.addActionListener(this);e_replace = new JMenuItem("替换(R)");e_replace.setAccelerator(KeyStroke.getK eyStroke('R',InputEvent.CTRL_MASK,false)) ;e_replace.addActionListener(this);s_font = new JMenuItem("字体(T)");s_font.setAccelerator(KeyStroke.getKeyStrok e('T',InputEvent.CTRL_MASK,false));s_font.addActionListener(this);s_color = new JMenuItem("颜色(C)...");s_color.setAccelerator(KeyStroke.getKeyStro ke(KeyEvent.VK_C,InputEvent.CTRL_MAS K | InputEvent.SHIFT_MASK));s_color.addActionListener(this);h_editor = new JMenuItem("关于记事本");h_editor.setAccelerator(KeyStroke.getKeyStro ke(KeyEvent.VK_E,InputEvent.CTRL_MAS K));h_editor.addActionListener(this);h_help = new JMenuItem("帮助信息(H)");h_help.setAccelerator(KeyStroke.getKeyStrok e(KeyEvent.VK_I,InputEvent.CTRL_MASK) );h_help.addActionListener(this);//添加右键弹出式菜单popUpMenu.add(je_copy);popUpMenu.add(je_paste);popUpMenu.add(je_cut);popUpMenu.add(je_clear);popUpMenu.addSeparator();popUpMenu.add(je_selectAll);popUpMenu.add(je_find);popUpMenu.add(je_replace);//编辑区鼠标事件,点击右键弹出"编辑"菜单textArea.addMouseListener(new MouseAdapter(){public void mouseReleased(MouseEvent e) {if(e.getButton() == MouseEvent.BUTTON3)popUpMenu.show(e.getComponent(), e.getX(), e.getY());} //e.getComponent()和textArea具有同等效果public void mouseClicked(MouseEvent e){if(e.getButton() == MouseEvent.BUTTON1)popUpMenu.setVisible(false);}});this.setJMenuBar(jmb);this.setTitle("记事本程序");file.add(f_new); //添加文件菜单组件file.add(f_open);file.addSeparator(); //加分隔线file.add(f_save);file.add(f_saveas);file.addSeparator();file.add(f_close);edit.add(e_copy); //添加编辑菜单组件edit.add(e_paste);edit.add(e_cut);edit.add(e_clear);edit.addSeparator();edit.add(e_selectAll);edit.add(e_find);edit.add(e_replace);style.addSeparator();style.add(s_font);style.add(s_color);jmb.add(file); //添加格式菜单组件jmb.add(edit);jmb.add(style);jmb.add(help);help.add(h_editor); //添加帮助菜单组件help.add(h_help);//textArea.setWrapStyleWord(true); //设置在单词过长的时候是否要把长单词移到下一行。
课程设计java记事本
课程设计 java记事本一、课程目标知识目标:1. 理解Java基本语法结构,掌握面向对象编程的基本概念;2. 学会使用Java编写简单的记事本程序,理解程序的基本结构;3. 了解Java事件处理机制,掌握基本的用户界面设计方法。
技能目标:1. 能够运用所学知识,独立编写、调试和运行Java记事本程序;2. 培养良好的编程习惯,编写结构清晰、易于维护的代码;3. 学会使用集成开发环境(IDE)进行Java程序开发,提高编程效率。
情感态度价值观目标:1. 培养学生对编程的兴趣,激发学习积极性,增强自信心;2. 培养学生的团队协作能力,学会与他人分享和交流编程经验;3. 引导学生认识到编程在生活中的实际应用,培养创新意识和实践能力。
课程性质:本课程为实践性较强的Java编程课程,通过编写记事本程序,让学生掌握Java编程的基本知识和技能。
学生特点:学生处于初中或高中年级,具备一定的计算机操作能力和逻辑思维能力。
教学要求:结合学生特点,注重实践操作,激发学生的学习兴趣,培养编程技能,同时关注情感态度价值观的培养。
在教学过程中,将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. Java基本语法:变量、数据类型、运算符、控制语句(条件语句、循环语句);2. 面向对象编程:类与对象、构造方法、封装、继承、多态;3. Java事件处理机制:事件监听器、事件适配器、事件处理方法;4. 用户界面设计:窗口、标签、文本框、按钮等组件的使用;5. Java文件操作:文件的读取与写入、文件的保存与打开;6. 集成开发环境(IDE)的使用:Eclipse或IntelliJ IDEA的基本操作与调试技巧。
教学大纲:第一周:Java基本语法及控制语句学习;第二周:面向对象编程基本概念及实现;第三周:Java事件处理机制及用户界面设计;第四周:Java文件操作及记事本程序编写;第五周:实践与调试,完善记事本程序。
Java课程设计 记事本 课程设计 精品
课程设计说明课程名称: Java课程设计一、系统设计目的:1)设计一个简单的Windows记事本,可以实现以下功能:1:文件的新建,打开,保存;2:对文件的编辑,如全选,复制,剪切,粘贴;3、工具,进行大小写的转换4:执行完操作后,能够顺利关闭记事本;2)通过这次设计,可以帮助学生:1:提高对Java语言设计的掌握能力;2:理论联系实际,进一步提高学生的软件开发技术;3:培养学生分析、解决问题的能力。
二、系统实现思路:设计两个类,一个mynotepad类,具有程序的要求和功能再创建一个Notepad主类,在主类中创建一个mynotepad类的对象,就可以直接在编译器中运行程序。
1:界面设计在主界面中设计一个iFrame容器,并在其中加入一个下拉菜单和一个文本域控件。
2:功能设计在下拉菜单中加入子菜单并进行监听,分别实现对文件的操作功能。
点击不同菜单项时,进行不同的操作。
3:代码设计编写每个控件的相关代码,并进行调试。
三、系统详细设计1:界面设计创建一个下拉菜单和文本域,在文本域中显示编辑的文件信息。
主要代码:JMenu[] menus=new JMenu[]{new JMenu("文件"),new JMenu("编辑"),new JMenu("工具"),new JMenu("关于")};JMenuItem optionofmenu[][]=new JMenuItem[][]{{ new JMenuItem("新建"),new JMenuItem("打开"),new JMenuItem("保存"),new JMenuItem("退出")},{new JMenuItem("复制"),new JMenuItem("剪切"),new JMenuItem("粘贴"),new JMenuItem("文字颜色"),new JMenuItem("背景颜色")},{new JMenuItem("大写转小写"),new JMenuItem("小写转大写"),},{new JMenuItem("关于")}};void initMenu(){for(int i=0;i<menus.length;i++){menu.add(menus[i]);for(int j=0;j<optionofmenu[i].length;j++){menus[i].add(optionofmenu[i][j]);optionofmenu[i][j].addActionListener( action );}}this.setJMenuBar(menu);}2:功能设计部分菜单项的相关代码:新建文件ActionListener action=new ActionListener(){ //事件public void actionPerformed(ActionEvent e){String name = e.getActionmand();JMenuItem MI=(JMenuItem)e.getSource();if("新建".equals(name)){content.setText("");file=null;}else if("打开".equals(name)){if(file !=null)openfile.setSelectedFile(file);intreturnVal=openfile.showOpenDialog(mynotepad.this);if(returnVal==JFileChooser.APPROVE_OPTION){file=openfile.getSelectedFile();unfold();}}else if("保存".equals(name)){if(file!=null)openfile.setSelectedFile(file);intreturnVal=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);if(s==JOptionPane.YES_OPTION)System.exit(0);}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);}else if("背景颜色".equals(name)){color=JColorChooser.showDialog(mynotepad.this,"",color);content.setBackground(color);}else if("大写转小写".equals(name)){String str=content.getText();String str1=str.toLowerCase();content.setText(str1);}else if("小写转大写".equals(name)){String str=content.getText();String str1=str.toUpperCase();content.setText(str1);}else if("关于".equals(name)){JOptionPane.showMessageDialog(null,"程序制作:郑泽波&鲁裕浩&欧阳国胜&曾成成","关于",RMATION_MESSAGE);}四、系统调试运行1:界面调试确定主窗体,设置主窗体的属性,对窗体进行布局,加入所需控件并对控件进行初始化。
JAVA课程设计---设计一个记事本
课程设计(大作业)报告课程名称:面向对象程序设计设计题目:设计一个记事本院系:信息技术学院课程设计(大作业)任务书课程设计(大作业)报告一、需求分析如今有关记事本的软件种类繁多。
功能也是应有尽有,但是,软件并不是十全十美的:有的文件体积相对于一般文字编辑来说太大;有的功能太繁杂,使初级使用者一时难以掌握。
仅从日常应用方面来说,实现输入、保存、编辑等简单实用的功能就够了。
本程序的设计就是依照这样一种需要设计了一个简单的记事本程序。
本程序要构建的记事本程序参照了Windows操作系统的记事本工具,具体其功能有以下几个方面:(1)菜单中有“文件”,“编辑”,“关于”三个主菜单。
(2)“文件”有“新建”“打开”“保存”“退出”四个子菜单:分别用于新建文件,打开文件,保存文件,退出记事本。
(3)“编辑”中有“剪切”“复制”“粘贴”“颜色”三个字菜单:用于剪切文字,复制文字,粘贴文字。
增加了“颜色”子菜单来对文字的颜色进行设置。
(4)“关于”菜单中有关于记事本程序的制作日期,作者等信息。
二、系统总体设计在本程序中,设计了一个菜单栏和文本内容区。
设计过程中用到了JScrollPane,JMenu,JTextPane,JFileChooser等。
JMenu用来制作菜单,菜单包括“文件”“编辑”“关于”。
JTextPane主要用来输入文本。
为了加入颜色的设置,所以加了一个JColorChooser组件。
1.系统功能结构图设计2.系统文件结构图设计3.系统编辑结构图设计UML图:三、软件平台1、使用JDK配置环境在JAVA编辑器下进行编辑JAVA源程序2、EditPlus 3四、模块的分析与实现构建菜单以及下拉菜单: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("关于")}};文件菜单事件监听: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);编辑菜单的事件监听: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);异常处理:void saving(){try{FileWriter Writef=new FileWriter(file);Writef.write(content.getText());Writef.close();}Catch (Exception e){e.printStackTrace();}}关于部分:void initAboutDialog(){about.setLayout(new GridLayout(3,1));about.getContentPane().setBackground(Color.white);about.getContentPane().add(new JLabel("简单记事本程序设计"));about.getContentPane().add(new JLabel("11级计算机1班"));about.getContentPane().add(new JLabel("制作者:彭磊"));about.getContentPane().add(new JLabel("2012年12月27日"));about.setModal(true);about.setSize(200,100);about.setLocation(250,150);}五、调试分析各部分调试功能如图所示:六、总结在完成记事本合格程序中,基本上实现了我在需求分析时所预期的功能。
java课程设计记事本
java课程设计 记事本一、课程目标知识目标:1. 学生能理解记事本软件的基本功能需求,掌握Java编程语言实现文本编辑器的基础知识。
2. 学生能掌握Java中文件I/O操作,学会如何读取和保存文件。
3. 学生了解并掌握Java事件处理机制,实现对记事本界面上各种操作(如打开、保存、复制、粘贴等)的响应。
4. 学生理解MVC设计模式,并能应用于记事本程序的设计中。
技能目标:1. 学生能够独立设计并编写出一个具备基本功能的记事本程序,实现文本的打开、编辑、保存和另存为功能。
2. 学生通过实践,提高问题分析能力,掌握运用Java编程解决问题的方法和技巧。
3. 学生能够运用所学知识,对记事本程序进行扩展,增加如查找替换、字体设置等高级功能。
情感态度价值观目标:1. 学生在课程学习过程中,培养解决问题的耐心和毅力,增强对编程学习的兴趣。
2. 学生通过小组合作完成项目,培养团队协作能力和沟通技巧。
3. 学生学会分享编程心得,树立正确的学习态度,认识到编程对个人发展和社会进步的重要性。
本课程旨在让学生通过实际操作,掌握Java编程的基础知识和技能,培养实际编程能力。
考虑到学生年级的特点,课程内容设计将注重知识点的逐步深入和实际应用,使学生在完成课程学习后,能够具备独立设计和开发简单Java应用程序的能力。
二、教学内容1. Java基础知识回顾:包括数据类型、控制结构、类与对象、继承与多态等基础概念,以教材相关章节为参考,确保学生对Java基础知识有扎实的掌握。
2. 文件I/O操作:教学文件读写的基本方法,涉及File类、InputStream和OutputStream等类的使用,对应教材中文件操作相关章节。
3. Java事件处理机制:介绍事件监听器、事件源、事件对象等概念,以及如何使用AWT和Swing库处理图形用户界面事件,参考教材中图形用户界面设计相关内容。
4. MVC设计模式:讲解模型-视图-控制器设计模式的原理和应用,引导学生将设计模式应用于记事本程序设计,与教材中设计模式章节相结合。
记事本程序java课程设计
记事本程序java课程设计一、教学目标本课程旨在通过记事本程序的设计与实现,让学生掌握Java编程的基本语法、面向对象编程思想,以及常用数据结构的使用。
在知识目标上,要求学生能够熟练运用Java语言编写简单的记事本程序,理解并应用面向对象编程的基本概念,如封装、继承和多态。
在技能目标上,培养学生分析问题、解决问题的能力,以及良好的编程习惯。
在情感态度价值观目标上,激发学生对计算机科学的兴趣,培养学生的创新意识和团队协作精神。
二、教学内容本课程的教学内容主要包括Java语言基础知识、面向对象编程、常用数据结构、记事本程序设计等。
具体安排如下:1.Java语言基础知识:介绍Java编程语言的基本语法、数据类型、运算符、控制结构等。
2.面向对象编程:讲解类与对象、封装、继承和多态等概念,并引导学生通过实例掌握面向对象编程的方法。
3.常用数据结构:介绍数组、链表、栈、队列等数据结构的基本原理和应用。
4.记事本程序设计:引导学生运用所学知识编写一个简单的记事本程序,掌握文件操作、文本编辑等技能。
三、教学方法为了提高教学效果,本课程将采用多种教学方法相结合的方式,如讲授法、案例分析法、实验法等。
在教学过程中,教师将引导学生通过查阅教材、观看教学视频、编写代码和参与讨论,从而深入理解Java编程知识和记事本程序设计技巧。
同时,鼓励学生进行自主学习和团队合作,培养学生的创新意识和解决问题的能力。
四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:《Java编程思想》等。
2.参考书:《Java核心技术》、《Java Web开发》等。
3.多媒体资料:教学视频、PPT课件等。
4.实验设备:计算机、网络设备等。
通过以上教学资源的支持,学生将能够更好地学习Java语言和记事本程序设计,提高自己的编程技能。
五、教学评估本课程的教学评估将采用多元化的评价方式,以全面、客观、公正地评估学生的学习成果。
java课程设计项目记事本
java课程设计项目记事本一、教学目标本章节的Java课程设计项目——记事本,旨在让学生掌握Java编程语言的基本语法、面向对象编程思想以及基本的GUI设计。
通过本章节的学习,学生将能够:1.熟练使用Java基本数据类型、运算符、控制结构进行简单的编程。
2.理解面向对象编程的基本概念,如类、对象、封装、继承和多态。
3.掌握Java常用类库,如String、ArrayList、HashMap等。
4.学会使用Java Swing库进行GUI设计,实现记事本的基本功能,如文本编辑、字体设置、颜色设置等。
5.培养学生独立思考、解决问题的能力,以及团队协作的精神。
二、教学内容本章节的教学内容主要包括以下几个部分:1.Java基本语法和数据结构:主要包括数据类型、运算符、控制结构等基础知识。
2.面向对象编程:讲解类、对象、封装、继承和多态等概念,并通过实例让学生理解面向对象编程的思想。
3.Java常用类库:介绍String、ArrayList、HashMap等常用类库的使用方法。
4.Java Swing库:讲解Swing库的基本概念,如容器、组件、事件处理等,并引导学生如何使用Swing库实现记事本的基本功能。
5.项目实践:分组让学生动手实践,完成一个简单的记事本项目,培养学生的实际编程能力和团队协作能力。
三、教学方法为了提高学生的学习兴趣和主动性,本章节将采用以下教学方法:1.讲授法:讲解Java基本语法、面向对象编程思想和常用类库。
2.案例分析法:通过分析实际案例,让学生理解面向对象编程的思想和Swing库的使用方法。
3.实验法:让学生动手实践,完成记事本项目,培养实际编程能力。
4.讨论法:分组讨论,引导学生主动思考问题,提高团队协作能力。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将准备以下教学资源:1.教材:Java编程基础,用于讲解基本语法和数据结构。
2.参考书:Java Swing编程,用于讲解Swing库的使用方法。
java记事本程序课程设计
java记事本程序 课程设计一、课程目标知识目标:1. 学生能理解Java语言的基本语法和程序结构,掌握面向对象编程的基本概念。
2. 学生能掌握使用Java编写文本处理程序的基本方法,了解文件读写操作。
3. 学生了解异常处理机制,并能在程序中正确使用try-catch结构处理异常。
技能目标:1. 学生能够运用所学知识,独立设计和编写一个具备基本功能的记事本程序。
2. 学生通过编程实践,提高问题分析能力,学会运用面向对象方法设计程序结构。
3. 学生能够运用调试工具检查和修正程序中的错误,提高程序调试能力。
情感态度价值观目标:1. 学生通过编程实践,培养对计算机科学的兴趣,激发主动学习和探索精神。
2. 学生在小组合作中学会沟通和协作,培养团队意识和集体荣誉感。
3. 学生通过解决实际问题,增强自信心,树立正确的技术价值观和社会责任感。
课程性质:本课程为信息技术学科,结合Java编程知识,以实践操作为主,注重培养学生的动手能力和实际应用能力。
学生特点:学生为初中年级,对计算机编程有一定的基础,好奇心强,喜欢探索新知识。
教学要求:注重理论与实践相结合,引导学生通过自主学习和小组合作,完成记事本程序的设计与实现。
在教学过程中,关注学生的个体差异,提供有针对性的指导。
二、教学内容1. Java基本语法复习:变量、数据类型、运算符、控制流程(条件语句、循环语句)。
相关教材章节:第一章 Java语言概述,第二章 Java基本语法。
2. 面向对象基础:类与对象、构造方法、封装、继承、多态。
相关教材章节:第三章 面向对象编程基础,第四章 类与对象。
3. 文件读写操作:File类、FileReader、FileWriter、BufferedReader、BufferedWriter。
相关教材章节:第六章 文件与I/O流。
4. 异常处理:异常的概念、try-catch语句、finally语句、自定义异常。
相关教材章节:第七章 异常处理。
java课程设计编写记事本
java课程设计编写记事本一、教学目标本章节的教学目标为:知识目标:使学生掌握Java编程语言的基本语法和结构,理解面向对象编程的基本概念和方法。
技能目标:培养学生使用Java编程语言进行简单的程序设计和开发的能力,能够运用面向对象编程方法解决实际问题。
情感态度价值观目标:培养学生对计算机科学的兴趣和热情,提高学生解决问题的能力和创新意识。
二、教学内容本章节的教学内容为:1.Java编程语言的基本语法和结构,包括数据类型、运算符、控制结构等。
2.面向对象编程的基本概念和方法,包括类和对象、继承和多态、封装等。
3.Java编程语言的高级特性,包括异常处理、文件操作、多线程等。
三、教学方法本章节的教学方法为:1.讲授法:通过讲解和演示,使学生掌握Java编程语言的基本语法和结构,理解面向对象编程的基本概念和方法。
2.实验法:通过编写和运行Java程序,使学生掌握Java编程语言的高级特性和应用技巧。
3.讨论法:通过分组讨论和交流,培养学生解决实际问题的能力和创新意识。
四、教学资源本章节的教学资源为:1.教材:《Java编程思想》2.参考书:《Java核心技术》3.多媒体资料:Java编程语言的教学视频和演示文稿4.实验设备:计算机和网络设备五、教学评估本章节的教学评估方式包括:1.平时表现:通过课堂参与、提问、回答问题等评估学生的学习态度和积极性。
2.作业:布置和批改课后作业,评估学生的理解和应用能力。
3.考试:进行定期的考试,评估学生对知识点的掌握程度和编程能力。
评估方式应客观、公正,能够全面反映学生的学习成果。
可以通过成绩、评语等方式进行反馈,帮助学生了解自己的学习情况并改进。
六、教学安排本章节的教学安排规定如下:1.教学进度:按照教材的章节顺序进行教学,确保覆盖所有重要知识点。
2.教学时间:安排合理的课堂时间,保证有足够的时间进行讲解、实践和讨论。
3.教学地点:选择适合编程实践的教室,确保学生有足够的计算机设备进行操作。
记事本-java课程设计
记事本-java课程设计一、课程目标知识目标:1. 理解Java面向对象编程的基本概念,掌握类的定义、属性和方法的编写;2. 学会使用Java编写简单的记事本应用程序,理解其功能模块和数据结构;3. 掌握Java事件处理机制,实现对记事本界面事件的处理。
技能目标:1. 能够运用所学知识独立设计并编写出一个具有基本功能的记事本程序;2. 培养学生分析问题、解决问题的能力,通过编写代码实现记事本功能;3. 提高学生的团队协作能力,分组完成课程设计任务。
情感态度价值观目标:1. 激发学生对编程的兴趣,培养其对计算机科学的热爱;2. 培养学生勇于挑战困难、不断探索的精神,增强自信心;3. 培养学生具备良好的编程习惯,遵循编程规范,提高代码质量。
课程性质:本课程为Java语言程序设计的实践课程,侧重于培养学生的编程实践能力和团队协作能力。
学生特点:学生已具备一定的Java基础,能够理解面向对象编程的基本概念,但对实际项目的开发还较为陌生。
教学要求:结合学生特点,课程目标分解为具体学习成果,注重实践操作,鼓励学生积极参与讨论和团队协作,提高编程实践能力。
在教学过程中,注重引导学生思考问题、分析问题,培养其解决问题的能力。
同时,关注学生的情感态度,激发其对编程的兴趣,培养良好的编程习惯。
二、教学内容1. 面向对象编程基础:- 类的定义、属性、方法- 对象的创建与使用- 封装、继承、多态的概念及应用2. 记事本应用程序设计:- 界面设计:GUI组件的使用,如JFrame、JTextArea等- 事件处理:鼠标事件、键盘事件等- 数据存储:文件读写操作,实现数据的保存与打开3. 编程实践:- 设计记事本界面,实现基本功能(如新建、打开、保存、另存为、退出等)- 使用Java异常处理机制,提高程序的健壮性- 使用版本控制工具(如Git)进行团队协作4. 教学内容安排与进度:- 第一章:面向对象编程基础(2课时)- 第二章:记事本应用程序设计(3课时)- 第三章:编程实践(4课时)5. 教材章节及内容:- 第一章:Java面向对象编程(第1-2节)- 第二章:Java图形用户界面编程(第3-5节)- 第三章:文件操作与异常处理(第6-7节)教学内容注重科学性和系统性,结合课程目标,循序渐进地组织教学。
java桌面课程设计记事本
java桌面课程设计记事本一、教学目标本课程的目标是让学生掌握Java语言实现桌面应用程序的基本技能,通过学习Java语言基础和GUI编程,培养学生的编程能力和解决实际问题的能力。
在知识目标方面,要求学生掌握Java语言基本语法、面向对象编程思想、常用类库和GUI组件的使用。
在技能目标方面,要求学生能够独立设计并实现一个桌面记事本应用程序,掌握Java编程的基本流程。
在情感态度价值观目标方面,培养学生的团队合作意识,提高学生解决问题的能力,使学生认识到计算机编程在实际应用中的重要性。
二、教学内容本课程的教学内容主要包括Java语言基础、面向对象编程、GUI编程和桌面应用程序设计。
具体包括以下几个部分:1.Java语言基础:Java语言的基本语法、数据类型、运算符、控制结构、数组、字符串等。
2.面向对象编程:类与对象、封装、继承、多态、接口、集合等。
3.GUI编程:Swing组件、事件处理、布局管理、菜单栏、工具栏等。
4.桌面应用程序设计:记事本应用程序的需求分析、设计、实现和测试。
三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法相结合的方式。
包括:1.讲授法:讲解Java语言基础、面向对象编程和GUI编程的基本概念和原理。
2.案例分析法:分析典型的桌面应用程序案例,引导学生学会分析问题和解决问题。
3.实验法:让学生动手编写代码,实现桌面记事本应用程序,提高学生的实际操作能力。
4.讨论法:学生进行小组讨论,分享学习心得和经验,培养学生的团队合作意识。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将准备以下教学资源:1.教材:《Java核心技术卷I》、《Java GUI编程》等。
2.参考书:《Java编程思想》、《Effective Java》等。
3.多媒体资料:教学PPT、视频教程、在线代码示例等。
4.实验设备:计算机、网络环境、编程软件(如Eclipse、IntelliJ IDEA等)。
记事本_java课设_含可运行程序
记事本1.课程设计目的通过此次课程设计,掌握JDK、Editplus、Eclipse、JCreator等开发工具的运用,拓宽常用类库的应用。
把课堂学习内容和实践充分结合,全面掌握Java语言的编程思想及面向对象程序设计的方法。
使得自身知识更加丰富。
为以后工作打下良好的基础。
报告中的程序是使用Java程序编写,能够进行输入文字操作,并且有新建文件,打开文件,保存文件,退出,复制,粘贴,剪切等功能,不同之处是本程序能够对文字的颜色和背景颜色进行设置。
2.设计方案论证2.1设计思路2.1.1本记事本程序设计简单,主要参照WINDOWS自带记事本所设计,菜单中有“文件”,“编辑”,“格式”“查看”“帮助”五个主菜单。
2.1.2文件有“新建”“打开”“保存”“另存为”“打印”“退出”四个子菜单:分别用于新建文件,打开文件,保存文件,另存文件,打印文件,退出记事本。
2.1.3编辑中有“撤消”“剪切”“复制”“粘贴”“删除”“查找”等子菜单:分别用于剪切文字,复制文字,粘贴文字。
2.1.4“格式”菜单中有自动换行,颜色,字体三个子菜单。
用于改变字体。
字体颜色和背景颜色。
2.1.5“查看”和“帮助”菜单中分别有状态栏,帮助和关于子菜单。
2.2设计方法在设计记事本时,需要编写5个Java源文件:Notepad4.java、UndoHandler.java、MyFont.java、FileTransferHandler.java 和Clock.java。
2.2.1 Notepad4.java该文件是主类,调用其它各个类,实现软件功能。
2.2.2 UndoHandler.java该文件是实现了接口UndoableListener的类2.2.3MyFont.java该文件是用于设置字体的类2.2.4 FileTransferHandler.java该文件是TransferHandler 的子类,从键盘向记事本输入数据的类。
记事本程序说明书
*******************实践教学*******************理工大学计算机与通信学院 2012年秋季学期Java课程设计题目:记事本程序专业班级:软件基地班姓名:学号:指导教师:成绩:摘要本次课程设计的题目是用JAVA语言编写记事本程序,要:用图形界面实现;含有简单的文字编辑功能,如:剪切、复制、粘贴、删除;还能实现保存、另存为、查找、替换等功能。
本程序主要用到了Java swing组件和事件监听器,还用到了文件的输入输出流。
记事本的界面参考了Windows中的记事本界面,并且根据课程设计要求做了适当的调整。
分别对每个事件定义事件监听器。
然后在实现相应的方法。
关键词:记事本程序;Java语言;swing组件目录摘要 (2)序言................................... 4错误!未定义书签。
第一章分析与设计........................ 5错误!未定义书签。
第二章详细设计. (6)第三章系统测试 (16)第四章软件使用说明书 (19)设计总结 (20)参考文献 (21)致 (22)序言Java语言是当今流行的网络编程语言,它具有面向对象、跨平台、分布应用等特点。
面向对象的开发方法是当今世界最流行的开发方法,它不仅具有更贴近自然的语义,而且有利于软件的维护和继承。
为了进一步巩固课堂上所学到的知识,深刻把握Java语言的重要概念及其面向对象的特性,使我们能够熟练的应用面向对象的思想和设计方法解决实际问题的能力。
通过此次课程设计,巩固所学Java语言基本知识,增进Java语言编辑基本功,掌握JDK、Eclipse等开发工具的运用,拓宽常用类库的应用。
使学生通过该教学环节与手段,把所学课程及相关知识加以融会贯通,全面掌握Java语言的编程思想及面向对象程序设计的方法,为今后从事实际工作打下坚实的基础。
第一章分析与设计一、课程设计目的设计一个具有GUI界面的记事本,含有简单的文字编辑功能,如:剪切、复制、粘贴、删除;还能实现保存、另存为、查找、替换等功能。
java记事本课程设计
测试方法:手动测试、自动化测 试
添加标题
添加标题
添加标题
添加标题
测试内容:新建、打开、保存、 编辑、查找、替换等操作
测试结果:记录测试过程中的问 题,并提出改进建议
性能测试
测试目的:验证Java记 事本的性能是否满足需求
测试工具:JMeter、 LoadRunner等
测试指标:响应时间、吞 吐量、资源利用率等
textArea.setLineWrap(true); textArea.setWrapStyleWord(true);
• ``` • JTextArea textArea = new JTextArea(); • textArea.setLineWrap(true); • textArea.setWrapStyleWord(true);
记事本功能需求
记录文本:能够记录和编辑文本内容 保存文件:能够保存文本内容为文件 打开文件:能够打开已保存的文本文件
查找替换:能够查找和替换文本内容
字体设置:能够设置文本的字体、大小、 颜色等
界面设计:简洁明了,易于操作
界面设计
主界面:简洁明 了,易于操作
功能按钮:清晰 可见,易于点击
文本编辑区:可 输入、编辑、保 存文本
测试场景:单用户、多用 户、高并发等
测试结果分析:找出性能 瓶颈,优化代码或配置
性能优化:优化算法、优 化数据库、优化网络等
兼容性测试
操作系统兼容性:测试在不同操作系统下的运行情况 浏览器兼容性:测试在不同浏览器下的运行情况 硬件兼容性:测试在不同硬件配置下的运行情况 软件兼容性:测试与其他软件的兼容性情况
查找替换功能
功能描述:在文本中查找指定的 字符串,并将其替换为另一个字 符串
记事本java课程设计
记事本java课程设计一、课程目标知识目标:1. 理解Java语言的基本语法和程序结构;2. 掌握使用记事本进行Java编程的方法;3. 学习面向对象编程思想,了解类和对象的基本概念;4. 掌握基本的输入输出操作,文件读写方法。
技能目标:1. 能够使用记事本编写简单的Java程序;2. 能够运用面向对象编程思想设计简单的类和对象;3. 能够实现基本的用户交互功能,如输入输出操作;4. 能够对程序进行调试和修改,解决常见错误。
情感态度价值观目标:1. 培养学生对编程的兴趣和热情,激发创新思维;2. 培养学生良好的编程习惯,注重代码规范;3. 培养学生团队协作能力,学会与他人共同解决问题;4. 培养学生面对困难的勇气和毅力,勇于尝试和改进。
课程性质:本课程为实践性较强的Java编程入门课程,通过记事本进行编程实践,使学生在动手操作中掌握Java语言的基本知识。
学生特点:学生处于初级阶段,对编程有一定兴趣,但缺乏实际操作经验,需要通过具体实例和实际操作来提高。
教学要求:教师需关注学生个体差异,提供个性化指导,确保学生在实践中掌握Java编程基本技能,并注重培养学生的情感态度价值观。
教学过程中,将目标分解为具体学习成果,便于教学设计和评估。
二、教学内容1. Java语言基础:- 数据类型、变量、常量- 运算符、表达式、语句- 控制结构:顺序结构、分支结构、循环结构- 数组、字符串2. 面向对象编程:- 类的定义、属性、方法- 对象的创建、使用- 封装、继承、多态3. 常用类和接口:- Scanner类实现用户输入- File类和IOException处理文件操作- String类和StringBuffer类操作字符串4. 基本输入输出:- System.out.println()输出- Scanner类实现键盘输入5. 简单的记事本程序设计:- 实现文本文件的读取和保存- 添加菜单和功能选项- 支持基本的文本编辑功能(如撤销、剪切、复制、粘贴)教学内容根据课程目标,结合课本章节进行组织,确保学生能循序渐进地掌握Java编程知识。
java课程设计--日历记事本
java课程设计说明书课程名称Java程序设计课程代码题目日历记事本年级/专业/班学生姓名学号指导老师开题时间完成时间课程设计任务书课程名称Java程序设计学生姓名1、设计的目的与要求;1、)为用户提供一个带有日程提醒功能的日历记事本并具备以下功能:(1)、显示信息:用户可以向前翻页查询前一个月的日期,也可以向后翻页查询下一个月的日期。
(2)、定时提醒:用户可以针对某一天来添加,删除和编辑这一天的日程提醒信息,当系统时间和提醒时间相吻合时,给出具有提示信息的对话框。
(3)、查询信息:用户可以查询到某个月的所有的提示信息。
2、)对java技术的进一步了解和简单的运用;3、)初步的接触软件工程;设计进度及完成情况目录摘要.................................................................................................................................. - 4 -1. 引言..................................................................................................................................... - 5 -2.设计目的与任务................................................................................................................... - 5 -3.设计方案............................................................................................................................... - 6 -3.1 总体设计................................................................................................................... - 6 -3.2设计要求.................................................................................................................... - 6 -3.3系统的主要功能........................................................................................................ - 6 -3.4系统功能结构图........................................................................................................ - 6 -3.5运行功能(截图).................................................................................................... - 7 -4.结束语................................................................................................................................... - 9 -5.致谢................................................................................................................................... - 9 -6.参考文献............................................................................................................................. - 10 -7.附录A:源程序.................................................................................................................... - 11 - 8附录B:实验体会............................................................................................................. - 24 -摘要本课程设计通过代码实现将理论知识和具体实践相结合,巩固提高了对JAVA的相关方法与概念的理解,使学生的发散思维及动手能力进一步加强,加强对计算机及软件工程的进一步了解。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
*******************实践教学*******************兰州理工大学计算机与通信学院2012年秋季学期Java 课程设计题目:记事本系统设计专业班级:姓名:学号:指导教师:成绩:目录摘要 (1)序言 (2)正文 (3)1.系统设计与分析 (3)2.详细设计 (3)3.系统测试 (14)4.软件使用说明书 (17)设计总结 (18)参考文献 (19)致谢 (20)附录(程序源代码) (21)摘要本次课程设计的题目是用java语言编写记事本程序,要求是:用图形界面实现;含有简单的文字编辑功能,如:剪切、复制、粘贴、删除;还能实现保存、另存为、查找、替换等功能。
本程序主要用到了Java swing组件和事件监听器,还用到了文件的输入输出流。
记事本的界面参考了Windows中的记事本界面,并且根据课程设计要求做了适当的调整。
关键字:记事本程序;Java语言;Jcreator序言Java的前身是Oak,它一开始只是被应用于消费性电子产品中。
后来它的开发者们发现它还可以被用于更大范围的Internet上。
1995年,Java语言的名字从Oak编程了Java。
1997年J2SE1.1发布。
1998年J2SE1.2发布,标志Java2的诞生。
十多年来,Java编程语言及平台成功地运用在网络计算及移动等各个领域。
Java的体系结构由Java语言、Java class、Java API、Java虚拟机组成。
它具有简单、面向对象、健壮、安全、结构中立、可移植和高效能等众多优点。
Java支持多线程编程,Java运行时系统在多线程同步方面具有成熟的解决方案。
Java的平台标准有Java ME,Java SE和Java EE。
Java发展到今天,它的卓越成就及在业界的地位毋庸置疑。
目前在众多的支持Java的开发工具中主要的7有Java Development Kit,NetBeans,Jcreator,JBuilder,JDeveloper和Eclipse等。
其中Java Development Kit 简称JDK是大多开发工具的基础。
以上的每种开发工具都有优缺点,对于开发者来说,重要的是要根据自己的开发规模、开发内容和软硬件环境等因素来选择一种合适的开发工具。
在本程序设计中,因为需要开发的是记事本程序,规模较小,内容较少,所以选择了适合初学者使用的JCreator开发工具。
正文1.系统设计与分析该课程设计报告里的简易记事本程序是使用Java程序设计语言编写的,要求实现记事本的基本功能,参考了windows中记事本的一些功能。
要求打开文件,读取文件中的文本信息;显示、编辑修改文本信息;实现新建、打开、保存文本文件以及控制保存文本信息到指定的文件的一些基本功能。
概要设计系统主要功能本程序是利用java程序设计语言编写的一个简单的记事本程序。
可以通过菜单栏和工具栏实现以下功能:如文件的新建,打开,保存和退出;对文件的编辑,如复制,剪切,粘贴;以及帮助菜单;执行完操作后,能够顺利关闭记事本。
1.运行环境要求(1) 实现设计的系统硬件需求硬件配置的基本要求:* 586以上的计算机* 32MB以上的内存* 彩色显示器* 3.5寸高密软盘驱动器* 光盘驱动器* 4G以上硬盘空间* 鼠标(2) 实现设计的系统软件* WINDOWS95或WINDOWS98* Jcreator Pro全套软件2.详细设计设计思路:设计一个EditorDemo类,继承自JFrame类,并在EditorDemo类利用JtextPane创建面板窗口textPane,利用Jlabel创建状态栏 statusBar,利用JFileChooser 创建文件选择器filechooser,利用JMenuBar创建并实例化菜单栏,利用JToolBar创建工具栏,再通过一些具体方法实现各功能键的功能。
建立构造函数public EditorDemo();通过该构造函数实现记事本程序的主要功能,运行时在主类中通过调用该构造函数来实现对记事本程序的基本操作。
1:窗口设计在主接口中设计一个EditorDemo容器继承自JFrame,并在其中加入菜单栏、工具栏和一个文本域控件。
public class EditorDemo extends JFrameJTextPane textPane = new JTextPane(); //创建文本窗格,编辑窗口JFileChooser filechooser = new JFileChooser(); //文件选择器setJMenuBar(createJMenuBar(actions)); //设置菜单栏Container container = getContentPane(); //得到容器container.add(createJToolBar(actions), BorderLayout.NORTH); //工具栏container.add(textPane, BorderLayout.CENTER); //增加文本窗格2:功能设计(1)在下拉菜单中加入子菜单并进行监听,分别实现对文件的操作功能。
点击不同菜单项时,显示不同接口。
private JMenuBar createJMenuBar(Action[] actions) //创建菜单栏JMenuBar menubar = new JMenuBar(); //实例化菜单栏JMenu menuFile = new JMenu("文件(F)"); //实例化菜单JMenu menuEdit = new JMenu("编辑(E)");JMenu menuFormat = new JMenu("格式(O)");JMenu menuFind = new JMenu("查找(V)");JMenu menuAbout = new JMenu("帮助(H)");menuFile.add(new JMenuItem(actions[0])); //增加新菜单项menuFile.add(new JMenuItem(actions[1]));menuFile.add(new JMenuItem(actions[2]));menuFile.addSeparator();menuFile.add(new JMenuItem(actions[7]));menuEdit.add(new JMenuItem(actions[3]));menuEdit.add(new JMenuItem(actions[4]));menuEdit.add(new JMenuItem(actions[5]));menuAbout.add(new JMenuItem(actions[6]));menubar.add(menuFile); //增加菜单menubar.add(menuEdit);menubar.add(menuFormat);menubar.add(menuFind);menubar.add(menuAbout); return menubar; //返回菜单栏如下图:(2)加入工具栏的功能键,通过工具栏实现对文本的基本操作。
Action[] actions = //Action数组,各种操作命令new NewAction(),new OpenAction(),new SaveAction(),new CutAction(),new CopyAction(),new PasteAction(),new AboutAction(),new ExitAction(),private JToolBar createJToolBar(Action[] actions) //创建工具条JToolBar toolBar = new JToolBar(); //实例化工具条JButton bt = new JButton(actions[i]); //实例化新的按钮toolBar.add(bt); //增加按钮到工具栏如图所示:(3)对每个菜单项进行注册监听。
点击不同功能键时,实现不同的操作,显示不同的窗口。
主要实现方法代码如下:class NewAction extends AbstractAction { //实现新建文件命令功能public NewAction() {super("新建文本");}public void actionPerformed(ActionEvent e) {textPane.setDocument(new DefaultStyledDocument()); //清空文档}}class OpenAction extends AbstractAction { //实现打开文件命令功能public OpenAction() {super("打开文本");}public void actionPerformed(ActionEvent e) {int i = filechooser.showOpenDialog(EditorDemo.this);//显示打开文件对话框if (i == JFileChooser.APPROVE_OPTION) { //点击对话框中打开选项File f = filechooser.getSelectedFile(); //得到选择的文件try {InputStream is = new FileInputStream(f); //得到文件输入流textPane.read(is, "d"); //读入文件到文本窗格} catch (Exception ex) {ex.printStackTrace(); //输出出错信息}}}}如下图:class SaveAction extends AbstractAction { //实现保存文本命令public SaveAction() {super("保存文本");}public void actionPerformed(ActionEvent e) {int i = filechooser.showSaveDialog(EditorDemo.this);//显示保存文件对话框if (i == JFileChooser.APPROVE_OPTION) { //点击对话框中保存按钮File f = filechooser.getSelectedFile(); //得到选择的文件try {FileOutputStream out = new FileOutputStream(f);//得到文件输出流out.write(textPane.getText().getBytes()); //写出文件} catch (Exception ex) {ex.printStackTrace(); //输出出错信息}}}}如下图:class ExitAction extends AbstractAction { //实现退出命令public ExitAction() {super("退出系统");}public void actionPerformed(ActionEvent e) {System.exit(0); //退出程序}}class CutAction extends AbstractAction { //实现剪切命令public CutAction() {super("剪切");}public void actionPerformed(ActionEvent e) {textPane.cut(); //调用文本窗格的剪切命令}} class CopyAction extends AbstractAction { //实现拷贝命令public CopyAction() {super("拷贝");}public void actionPerformed(ActionEvent e) {textPane.copy(); //调用文本窗格的拷贝命令class PasteAction extends AbstractAction { //实现粘贴命令public PasteAction() {super("粘贴");}public void actionPerformed(ActionEvent e) {textPane.paste(); //调用文本窗格的粘贴命令}} class AboutAction extends AbstractAction { //关于版本命令public AboutAction() {super("版本");}public void actionPerformed(ActionEvent e) {String str="简易记事本\n\版本:1.0\n作者:郭孔明\n主要功能:实现简单文本编辑。