辽宁工业大学JAVA程序设计课程设计(论文)题目:记事本院(系):软件学院专业班级:软件技术083班学号:学生姓名:范舵指引教师:丁宝柱教师职称:助教起止时间:.12.1至.12.16报程序设计专项(报告)任务及评语院(系):软件学院教研室:软件教研室学号学生姓名范舵专业班级软件技术083程序设计(报告)题目记事本程序设计专项任务与规定:(1)掌握Java编程、面向对象基本知识。(2)较纯熟地编写Java应用程序Application。程(3)理解Java惯用原则类库、编程技巧、异常解决。序(5)联系已学过内容,巩固所学理论,增强独立工作能力。设计(6)通过设计重要使学生有一种独立编写程序过程,对理论学习及动手能力(均有一种很大提高。告(7)通过本次设计,进一步培养学生热爱专业思想,同步对本专业综合素质)任提高起一种积极推动作用。务课程设计过程中,要严格遵守实践环节时间安排,听从指引教师指引。对的地完毕上述内容,记录实习日记,规范完整地撰写出课程设计报告。指引教师评语及成绩成绩:指引教师签字:年12月20日目录第1章课程设计目与规定..........................................................................错误!未定义书签。1.1课程设计目....................................................................................错误!未定义书签。1.2课程设计实验环境........................................................................错误!未定义书签。1.3课程设计预备知识........................................................................错误!未定义书签。1.4课程设计规定................................................................................错误!未定义书签。第2章课程设计内容..................................................................................错误!未定义书签。2.1课程设计重要内容..........................................................................错误!未定义书签。2.2概要设计..........................................................................................错误!未定义书签。2.2.1自定义类阐明......................................................................错误!未定义书签。2.3详细设计..........................................................................................错误!未定义书签。2.4测试分析..........................................................................................错误!未定义书签。2.4.1程序运营状况......................................................................错误!未定义书签。2.4.2程序异常解决......................................................................错误!未定义书签。第3章课程设计总结....................................................................................错误!未定义书签。参照资料错误!未定义书签。第1章课程设计目与规定1.1课程设计目《JAVA程序设计》是计算机有关专业必修专业基本课程,其实践性、应用性很强。实践教学环节是必不可少一种重要环节。本课程程序设计专项实际是计算机有关专业学生学习完《JAVA程序设计》课程后,进行一次全面综合训练,JAVA程序设计设计目是加深对理论教学内容理解和掌握,使学生较系统地掌握程序设计及其在网络开发中广泛应用,基本办法及技巧,为学生综合运用所学知识,运用软件工程为基本进行软件开发、并在实践应用方面打下一定基本。1.2课程设计实验环境硬件规定能运营Windows9.X操作系统微机系统。JAVA程序设计语言及相应集成开发环境,J2SDK和ECLIPSE开发工具。1.3课程设计预备知识熟悉JAVA语言及ECLIPSE开发工具。1.4课程设计规定按课程设计指引书提供课题,规定学生在自行完毕各个操作环节,并能实现且达到举一反三目,完毕一种项目解决一类问题。规定学生可以全面、进一步理解和纯熟掌握所学内容,并可以用其分析、设计和解答类似问题;对此可以较好地理解和掌握,可以进行简朴分析和判断;能编写出具备良好风格程序;掌握JAVA程序设计基本技能和面向对象概念和办法;理解多线程、安全和网络等编程技术。同步培养学生进行分析问题、解决问题能力;培养学生进行设计分析、设计办法、设计操作与测试、设计过程观测、理解和归纳能力提高。第2章课程设计内容2.1课程设计重要内容此JAVA记事本程序设计为两个类,一种jsb类,具备程序规定和功能再创立一种keshe主类,在主类中创立一种jsb类对象,就可以直接在编译器中运营程序。界面设计在主界面中设计一种Frame容器,并在其中加入一种下拉菜单和一种文本域控件,把该容器设立为GridLayout(1,1)布局。功能设计在下拉菜单中加入子菜单并进行监听,分别实现对文献操作功能。点击不同菜单项时,显示不同界面。代码设计编写每个控件有关代码,并进行调试。2.2概要设计本系统共涉及1个Java源文献。本系统采用了awt包,程序实现了文本编辑器基本功能有:打开文献,文献保存,文献另存为,退出,信息,查找,复制,剪切.粘贴,文字颜色,设立字体,设立字形,设立字号大小,由于该编辑器用是awt包,因此在技术上没有实现将文本以不同颜色显示功能.Java程序编辑器是:图形界面,线程,流与文献等技术综合应用.文本编辑区选用TextArea作为重要部件.文献操作实现:运用字符文献流readFromFile和writeToFile办法来实现.由于java特性,也许用任何一种编辑器来编辑,于是就将windows记事本作为模仿对象,依照实现状况删减了其中某些功能,如自动换行,设立字体,打印等功能.在设计类时候考虑简朴明了,就设计了一种主类和默认属性类做为程序整体框架,所有对象和办法是在默认属性类中创立和实现.以及为各组件注册事件监听监听程序也是在默认属性类中实现,主类完毕对象实例化及显示.这样设计长处是:条理清晰,容易理解,容易修改.这样设计缺陷是:不利于共享类中办法.2.2.1自定义类阐明类名:NoteBook作用为主类,继承父类没有,实现接口没有intresult=fileChooser.showOpenDialog(this);if(result==JFileChooser.CANCEL_OPTION){statusLabel.setText(您没有选取任何文献);return;}FilefileName=fileChooser.getSelectedFile();if(fileName==null||fileName.getName().equals())JOptionPane.showMessageDialog(this,不合法文献名,不合法文献名,JOptionPane.ERROR_MESSAGE);else{try{FileReaderfr=newFileReader(fileName);BufferedReaderbfr=newBufferedReader(fr);editArea.setText();while((str=bfr.readLine())!=null){//每次读取一行,直到文献结束editArea.append(str+\15\12);}//endwhilethis.setTitle(fileName.getName()+-记事本);statusLabel.setText(当前打开文献:+fileName.getAbsoluteFile());fr.close();isNewFile=false;currentFile=fileName;oldValue=editArea.getText();}catch(IOExceptionioException){}}}}//打开解决结束类名:JMenuBar类(菜单栏)JMenu继承自JMenuItem,它们都在javax.swing包中,都实现了Accessible,MenuElement接口publicclassJMenuBarDemo{publicstaticvoidmain(String[]args){//try{javax.swing.UIManager.setLookAndFeel(javax.swing.UIManager.getSystemLookAndFeelClassName());}catch(Exceptione){}JPanelpanel=newJPanel();panel.setBackground(Color.white);panel.setPreferredSize(newDimension(600,400));//JMenu有箭头(除了顶层),可以添加JMenu和JMenuItem;//JMenuItem无箭头,不可添加其她菜单项JFrameframe=newJFrame(JMenuBarDemo);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setContentPane(panel);frame.setJMenuBar(bar);frame.pack();frame.show();}}2.3详细设计importjava.io.*;importjava.util.Calendar;importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassNoteBookextendsJFrameActionListener,ItemListener,WindowListener,MouseListener{Containerc=this.getContentPane();JMenuBarjmb=newJMenuBar();JColorChooserjcc=newJColorChooser();implementsJMenujm1=newJMenu(文献(F));JMenujm2=newJMenu(编辑(E));JMenujm3=newJMenu(格式(O));JMenujm4=newJMenu(查看(V));JMenujm5=newJMenu(协助(H));JMenuItemjmi1=newJMenuItem(新建(N));JMenuItemjmi2=newJMenuItem(打开(O));JMenuItemjmi3=newJMenuItem(保存(S));JMenuItemjmi4=newJMenuItem(退出(X));JMenuI