java課程設(shè)計(jì)-簡單記事本_第1頁
java課程設(shè)計(jì)-簡單記事本_第2頁
java課程設(shè)計(jì)-簡單記事本_第3頁
java課程設(shè)計(jì)-簡單記事本_第4頁
java課程設(shè)計(jì)-簡單記事本_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、目錄前言2正文21.1課程設(shè)計(jì)的教學(xué)目的和任務(wù) 21.2課程設(shè)計(jì)的主要內(nèi)容22.1 問題描述及基本要求222 記事本基本功能 22.3使用的JAVA主要的類22.4 java類的主要方法 22.5程序流程圖42.6運(yùn)行界面42.6小結(jié)6參考文獻(xiàn):7附錄:8塔里木大學(xué)信息工程學(xué)院課程設(shè)計(jì)、八 、,刖言隨著科學(xué)技術(shù)的不斷發(fā)展,計(jì)算機(jī)已經(jīng)成為我們工作學(xué)習(xí)和生活中不可缺少的工具。文本編輯器是個(gè)人計(jì)算機(jī)最司空見慣的應(yīng)用程序了,在學(xué)習(xí)了 Java語言之后,我決定使用Java語言編寫記事本,具有基本的文字編輯功能。記事本是 Windows操作系統(tǒng)中常見自帶的一款用于創(chuàng)建和編輯文本文件的附件工具,用戶可 以在

2、其中方便地輸入文字,從而進(jìn)行編輯與操作。由于記事本操作簡單、小巧靈活。因此非常適合 用戶在進(jìn)行一些簡單的文字處理時(shí)使用。我們?cè)谌粘5纳钪蟹浅F毡榈厝ナ褂糜浭卤荆菂s很少去研究它的具體功能,更不會(huì)去考慮它的具體實(shí)現(xiàn)。經(jīng)過一個(gè)學(xué)期的學(xué)習(xí),我學(xué)習(xí)了Java這門面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,對(duì)于面向?qū)ο蟮母拍钣辛诉M(jìn)一步的了解,這個(gè)學(xué)期的java課程也有很多機(jī)會(huì)遇到實(shí)際的課題和項(xiàng)目,特別是課后練習(xí)實(shí)驗(yàn)和上機(jī)的一些基本題目,這對(duì)于鞏固所學(xué)的理論知識(shí)有很大的幫助。特別是在學(xué)完理論的 Java課程之后,進(jìn)行這樣一個(gè)課題設(shè)計(jì),可以把整本書 的知識(shí)進(jìn)行融會(huì)貫通,更進(jìn)一步地提高了我們的處理實(shí)際編程問題的能力。最后決定

3、做一個(gè)簡易記 事本程序并實(shí)現(xiàn)其中部分的功能。摘要:該程序是一個(gè)記事本,具有良好的界面,使用人員能快捷簡單地進(jìn)行操作。關(guān)鍵字:java、記事本、方法、事件。正文1.1課程設(shè)計(jì)的教學(xué)目的和任務(wù)(1) 使學(xué)生進(jìn)一步理解和掌握所學(xué)的各種基本抽象數(shù)據(jù)類型的邏輯結(jié)構(gòu)、存儲(chǔ)結(jié)構(gòu)和操作實(shí)現(xiàn)算法,以及它們?cè)诔绦蛑械氖褂梅椒ā?2) 使學(xué)生初步掌握軟件開發(fā)過程的問題分析、設(shè)計(jì)、編碼、測(cè)試等基本方法和基本技能。(3) 使學(xué)生掌握使用各種計(jì)算機(jī)資料和有關(guān)參考資料,提高學(xué)生進(jìn)行程序設(shè)計(jì)的基本能力。(4) 使學(xué)生能用系統(tǒng)的觀點(diǎn)和軟件開發(fā)一般規(guī)范進(jìn)行軟件開發(fā),培養(yǎng)軟件工作者所應(yīng)具備的科學(xué)的工作方法和作風(fēng)。1.2課程設(shè)計(jì)的主

4、要內(nèi)容(1) 問題分析和任務(wù)定義。根據(jù)題目的要求,充分地分析和理解問題,明確問題要求做什么?限制條件是什么?最終完成什么?(2) 邏輯設(shè)計(jì)。對(duì)問題描述中涉及的操作對(duì)象定義相應(yīng)的數(shù)據(jù)類型,并按照以數(shù)據(jù)結(jié)構(gòu)為中心的原則劃分模 塊,定義主程序模塊和各抽象數(shù)據(jù)類型。邏輯設(shè)計(jì)的結(jié)果應(yīng)寫出每個(gè)抽象數(shù)據(jù)類型的定義(包括數(shù)據(jù)結(jié)構(gòu)的描述和每個(gè)基本操作的功能說明),各個(gè)主要模塊的算法, 并畫出模塊之間的調(diào)用關(guān)系圖。(3) 物理設(shè)計(jì)。定義相應(yīng)的存儲(chǔ)結(jié)構(gòu)并寫出各函數(shù)的偽代碼算法。在這個(gè)過程中,要綜合考慮系統(tǒng)功能,使得系統(tǒng)結(jié)構(gòu)清晰、合理、簡單和易于調(diào)試,抽象數(shù)據(jù)類型的實(shí)現(xiàn)盡可能做到數(shù)據(jù)封裝,基本操作的規(guī) 格說明盡可能明

5、確具體。 詳細(xì)設(shè)計(jì)的結(jié)果是對(duì)數(shù)據(jù)結(jié)構(gòu)和基本操作作出進(jìn)一步的求精,寫出數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)的類型定義,寫出函數(shù)形式的算法框架。(4) 程序編碼。把詳細(xì)設(shè)計(jì)的結(jié)果進(jìn)一步求精為程序設(shè)計(jì)語言程序。同時(shí)加入一些注解和斷言,使程序中邏輯概念清楚,并編寫程序。(5) 程序調(diào)試與測(cè)試。采用自底向上,分模塊進(jìn)行,即先調(diào)試低層函數(shù)。能夠熟練掌握調(diào)試工具的各種功能,設(shè)計(jì)測(cè) 試數(shù)據(jù)確定疑點(diǎn),通過修改程序來證實(shí)它或繞過它。調(diào)試正確后,認(rèn)真整理源程序及其注釋,形成 格式和風(fēng)格良好的源程序清單和結(jié)果。(6) 結(jié)果分析。程序運(yùn)行結(jié)果包括正確的輸入及其輸出結(jié)果,調(diào)試程序,檢查運(yùn)行結(jié)果,并且測(cè)試其程序的功能,檢查是否可以完成題目要求。(

6、7) 撰寫課程設(shè)計(jì)報(bào)告。此系統(tǒng)是基于 Microsoft Window7 操作系統(tǒng)平臺(tái)的java應(yīng)用程序。具體開發(fā)環(huán)境為JDK 1.6版本和Eclipse SDK java 應(yīng)用程序開發(fā)工具。2.1. 問題描述及基本要求在開發(fā)環(huán)境為JDK 1.6版本下,利用 Eclipse SDK java應(yīng)用程序開發(fā)工具設(shè)計(jì)一個(gè)簡單記事本程序。要求具有基本的編輯功能和其它的一些功能,顯示簡單記事本文本框,可以進(jìn)行簡單文字 的編輯及輸入保存,并且編輯完畢之后可以進(jìn)行保存,以TXT格式選擇保存路徑,從而完成保存功能,將文件保存到計(jì)算機(jī)中。具有記事本的基本操作功能,可以打開文件文本,在計(jì)算機(jī)中查找資 源并且打開編

7、輯,方便用戶的使用。2.2. 記事本基本功能功能1:具有一個(gè)文本框,能進(jìn)行基本的文字編輯功能,并能打開和保存txt文檔; 功能2:具有窗口的基本功能,如按下關(guān)閉鍵程序?qū)㈥P(guān)閉;菜單欄具有以下功能:打開:可以通過搜索路徑打開一個(gè)已經(jīng)存在的、某一個(gè)路徑下的txt格式的文本文檔。保存:在記事本文本區(qū)域?qū)懭胍欢ǖ奈臋n要關(guān)閉前可以對(duì)其進(jìn)行保存,保存時(shí)需要文件名和 目錄進(jìn)行設(shè)置。退出:在關(guān)閉窗口的同時(shí),關(guān)閉運(yùn)行程序并退出記事本程序2.3使用的java主要的類Java程序中所使用的主要類為及其作用如下:類名:MyNoteBook作用:創(chuàng)建一個(gè)窗口。繼承的父類:JFrame實(shí)現(xiàn)的接口 : ActionListe

8、nerpublic class MyNoteBook exte nds Frame impleme nts Action Liste ner 創(chuàng)建一個(gè)圖形用戶界面窗口static TextArea txa創(chuàng)建一個(gè)文本區(qū)static Win Lis wlis創(chuàng)建一個(gè)窗口事件對(duì)象BorderLayout br創(chuàng)建一個(gè)邊框布局2.4 java類的主要方法文件的菜單下有“打開”和“保存”的菜單項(xiàng)目,而我們選擇時(shí)彈出的對(duì)話框就是文件對(duì)話框,創(chuàng)建一個(gè)菜單欄 static MyNoteBook,菜單欄下設(shè)置菜單組件staticMenuBar menuba ,創(chuàng)建菜單的所有項(xiàng)static Menultem i

9、tem,創(chuàng)建一個(gè)文本區(qū)static TextArea txa,創(chuàng)建一個(gè)窗口事件對(duì)象static Win Lis wlis,創(chuàng)建一個(gè)邊框布局BorderLayout br,設(shè)置標(biāo)題frm.setTitle" 簡單記事本”所設(shè)計(jì)的程序中所使用的java類的主要方法如下:static MyNoteBook frm = new MyNoteBook ();創(chuàng)建一個(gè)菜單欄static Men uBar men ubar = new Men uBar();創(chuàng)建一個(gè)下拉式菜單組件一一”文件”static Menu menu1 = new Menu(” 文件");創(chuàng)建一個(gè)下拉式菜單組件一一

10、”幫助”static Menu menu2 = new Menu(” 幫助");創(chuàng)建一個(gè)菜單的所有項(xiàng)一一”打開”static Menultem item1 = new Menultem(” 打開");創(chuàng)建一個(gè)菜單的所有項(xiàng)一一”保存”static Menultem item2 = new Menultem(” 保存");創(chuàng)建一個(gè)菜單的所有項(xiàng)一一”關(guān)于記事本”static Menultem item3 = new Menultem(” 關(guān)于記事本”);創(chuàng)建一個(gè)文本區(qū)static TextArea txa = new TextArea();創(chuàng)建一個(gè)窗口事件對(duì)象stati

11、c Win Lis wlis = new Win Lis();public static void main(String agrs) 創(chuàng)建一個(gè)邊框布局BorderLayout br = new BorderLayout();設(shè)置 Frame 的 titlefrm.setTitle(" 簡單記事本");將下拉式菜單menu1、menu2添加到菜單欄中men ubar.add(me nu1);men ubar.add(me nu 2);將菜單item1、item2添加到下拉式菜單menu1中,將菜單item3添加到下拉式菜單 menu2中men u1.add(item1);m

12、en u1.add(item2);menu 2.add(item3);將文本區(qū)txa添加到Frame中frm.add(txa);將此窗體的菜單欄設(shè)置為指定的men ubar菜單欄。frm.setMe nuBar(me nu bar);調(diào)整Frame組件的大小寬800高650frm.setSize(800, 650);顯示組件frm.setVisible(true);為組件添加窗口事件frm.addWi ndowListe ner(wlis);frm.addWi ndowListe ner(wlis);2.5程序流程圖設(shè)計(jì)的簡單記事本具有文字編輯功能,打開和保存功能。顯示一個(gè)窗口,可以進(jìn)行基本的

13、文字編輯功能,并能打開和保存txt文檔;窗口下拉有兩個(gè)菜單欄,分別具有所有項(xiàng), 文字編輯完畢后,文件下拉為打開和保存功能,幫助下拉為關(guān)于記事本功能,按下關(guān) 閉鍵程序?qū)㈥P(guān)閉;具體的操作流程如下圖所示:2.6運(yùn)行界面將設(shè)計(jì)的程序在 Eclipse java開發(fā)工具下運(yùn)行,運(yùn)行界面如下圖1所示,簡單記事本界面如圖2所示,保存界面如圖3所示,打開界面如圖 4所示,將每個(gè)運(yùn)行步驟截圖如下所示,編寫的程 序是在系統(tǒng)基于 Window7操作系統(tǒng)平臺(tái)的java應(yīng)用程序,具體開發(fā)環(huán)境為 JDK1.6版本和Eclipse SDK java應(yīng)用程序開發(fā)工具,下圖是設(shè)計(jì)的記事本程序執(zhí)行不同的功能時(shí)的運(yùn)行界面截圖,圖1

14、為在Eclipse下運(yùn)行界面,圖2為簡單記事本界面,圖 3為文本編輯保存,圖 4為文件打開界 面。詳細(xì)步驟如下圖所示:第5頁共11頁塔里木大學(xué)信息工程學(xué)院課程設(shè)計(jì)第6頁共11頁塔里木大學(xué)信息工程學(xué)院課程設(shè)計(jì)-E - -”E 'irwivrikfee-rm -vf*eZ-*-苗 Jfjlj J " -t* - k "?! 9- *4 * 上 i 8 r 顯1i J H n i M ' UU MIU_V|-2*-FEICEHWI 齊*'KHRMI -nWl-jn*3l irLalla raid ii;3.uy iihI' =n-M-gki - v

15、 kadmLarwl in. rilUn -feV'711 *i.ATqeFbmks id: ti*lvrv*HM*rME .driiBuaJu'MViimL iW*Tr-T. HTV-imianTlElVMmWaimi Wdh-4JM” -AAfa |MHA*-'AilJ 3皿h M0扌,曾-督* - 9覘"l,I圖3文本編輯保存第7頁共11頁塔里木大學(xué)信息工程學(xué)院課程設(shè)計(jì)圖4文件打開界面2.6小結(jié)本次java課程設(shè)計(jì)綜合考察了我們對(duì)Java程序設(shè)計(jì)知識(shí)的掌握熟練程度和實(shí)際運(yùn) 用能力。其間,涉及到了 Java中的絕大多數(shù)的知識(shí)點(diǎn),女口 Java圖形用戶界面設(shè)

16、計(jì)、 Java的異常處理機(jī)制、Java中的多線程程序設(shè)計(jì)、Java輸入輸出流等。要求我們能夠 將書本上的理論知識(shí)運(yùn)用到實(shí)踐當(dāng)中去,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來, 從理論中得出結(jié)論從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力,才能真正的掌握 所學(xué)知識(shí)。通過這次課程設(shè)計(jì),進(jìn)一步鞏固和豐富了我所學(xué)過的知識(shí),同時(shí)也讓我更 深層次的認(rèn)識(shí)了 java及其功能的強(qiáng)大。完成這門課程設(shè)計(jì)也進(jìn)一步加強(qiáng)了我的動(dòng)手能 力,及其思維能力,收獲了很多。在這次的課程設(shè)計(jì)中不僅檢驗(yàn)了我所學(xué)習(xí)的知識(shí), 也培養(yǎng)了我的實(shí)踐能力,讓我知道遇到一個(gè)問題,如何去尋找思路,如何去解決問題, 最終完成整個(gè)事情。在設(shè)計(jì)過程中,與同學(xué)分工

17、設(shè)計(jì),和同學(xué)們相互探討,相互學(xué)習(xí), 相互監(jiān)督。學(xué)會(huì)了合作,學(xué)會(huì)了寬容,學(xué)會(huì)了理解,也學(xué)會(huì)了做人與處世。第8頁共11頁塔里木大學(xué)信息工程學(xué)院課程設(shè)計(jì)參考文獻(xiàn):1 .張勇.Java程序設(shè)計(jì)與實(shí)踐教程.人民郵電出版社,20142 .張桂珠,劉麗,陳愛國.Java面向?qū)ο蟪绦蛟O(shè)計(jì)(第2版).北京郵電大學(xué)出版社,20073 .畢廣吉.Java程序設(shè)計(jì)實(shí)例教程M.冶金工業(yè)出版社,20074 .王保羅.Java面向?qū)ο蟪绦蛟O(shè)計(jì)M.清華大學(xué)出版社,20035 .劉騰紅,孫細(xì)明.信息系統(tǒng)分析與設(shè)計(jì)M.科學(xué)出版社,20036 .林邦杰徹底研究java.電子工業(yè)出版社,20027 .王薇.Java程序設(shè)計(jì)與實(shí)踐教程

18、華大學(xué)出社,20118 .Bruce Eckel 著,陳昊鵬 譯.Java 編程思想(第 4 版)Think in java Java 美,20079 .李剛瘋狂JAVA講義(第3版).電子工業(yè)出版社,201410.周志明深入理解Java虛擬機(jī):JVM高級(jí)特性與最佳實(shí)踐.機(jī)械工業(yè)出版社,2011第9頁共11頁塔里木大學(xué)信息工程學(xué)院課程設(shè)計(jì)附錄:import java.awt.*;import java.awt.event.*;import java.io.*;public class MyNoteBook extends Frame implements ActionListener stat

19、ic MyNoteBook frm = new MyNoteBook();/創(chuàng)建一個(gè)菜單欄static MenuBar menubar= new MenuBar();/創(chuàng)建一個(gè)下拉式菜單組件一一”文件”static Menu menu1= new Menu("文件”);/創(chuàng)建一個(gè)下拉式菜單組件一一”幫助”static Menu menu2= new Menu("幫助”);/創(chuàng)建一個(gè)菜單的所有項(xiàng)一一”打開”static Menultem item1 = new Menultem("打開”);/創(chuàng)建一個(gè)菜單的所有項(xiàng)一一”保存”static Menultem item2

20、 = new Menultem("保存”);/創(chuàng)建一個(gè)菜單的所有項(xiàng)一一”關(guān)于記事本”static Menultem item3 = new Menultem("關(guān)于記事本”);/FileDialog類顯示一個(gè)對(duì)話框窗口,用戶可以從中選擇文件。staticFileDialogdia1 =new FileDialog(frm,"打開”);/FileDialog.SAVE此常量值指示文件對(duì)話框窗口的作用是查找要寫入的文件。staticFileDialogdia2 =new FileDialog(frm,"保存”,F(xiàn)ileDialog.SAVE/創(chuàng)建一個(gè)文本區(qū)s

21、tatic TextArea txa = new TextArea();/創(chuàng)建一個(gè)窗口事件對(duì)象staticWin Lis wlis = n ewWi nLis();public static void main(String agrs) /創(chuàng)建一個(gè)邊框布局BorderLayout br = new BorderLayout();/ 設(shè)置 Frame的 titlefrm .setTitle("簡單記事本");/*將下拉式菜單menu1、menu2加到菜單欄中*/menuba.add( menu);menuba.add( menu2;menu2 中 */*將菜單iteml、it

22、em2添加到下拉式菜單 menul中,將菜單item3添加到下拉式菜單menu1add( iteml);menu1add( item2);menu2add( item3);/*為iteml、item2、item3添加指定的動(dòng)作偵聽器,以從此菜單項(xiàng)接收動(dòng)作事件*/iteml .addActionListener(frm);item2 .addActionListener(frm);item3 .addAct ion Liste ner(frm);/將文本區(qū)txa添加到Frame中frm.add( txa);II將此窗體的菜單欄設(shè)置為指定的menubar菜單欄。frm.setMe nuBar( m

23、enu ba);II調(diào)整Frame組件的大小寬800高650 frm.setSize(800, 650);II顯示組件frm .setVisible( true );I*為組件添加窗口事件*Ifrm.addWindowListener( wlis );frm.addWindowListener( wlis );I*窗口事件的實(shí)現(xiàn),在關(guān)閉窗口的同時(shí)關(guān)閉運(yùn)行程序*Istatic class Win Lisextends WindowAdapter public void windowClosing(WindowEvent e) frm .dispose。;public void actionPerformed(ActionEvent e) II獲取當(dāng)前點(diǎn)擊的菜單對(duì)象,getSource()返回最初發(fā)生Event的對(duì)象。Men ultem item = (Me nultem) e.getSource();if (item = iteml ) dial .setVisible( true );I*getDirectory() 獲取dial對(duì)話框的目錄,getFile() 獲取dial對(duì)話框的選定文件 *I String fname =dial .get

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論