第一篇:java項目實訓文檔
JAVA項目實訓文檔
項目名稱:在Netbeans下實現(xiàn)記事本程序
設(shè)計內(nèi)容:仿照windows提供的記事本設(shè)計一個功能類似的程序 具體設(shè)計:
一、建立項目
1、開始之前
使用NetBeans IDE開發(fā)JAVA程序,需要安裝如下軟件: l J2SE(TM)Development Kit(JDK),版本最好是1.5以上 l NetBeans IDE5.5.1 這兩個軟件都是免費的,可以到網(wǎng)上下載。下載完畢后需要先安裝好JDK,然后再安裝NetBeans IDE5.5,安裝完畢后,就可以打開NetBeans IDE5.5.1,開始我們的學習歷程了。
2、建立記事本項目
NetBeans是以項目的方式來管理程序的,通常一個程序就是一個項目。所以我們創(chuàng)建JAVA程序的第一步就是建立項目。(1)選擇NetBeans的文件菜單——新建項目,根據(jù)向?qū)Вㄈ鐖D1所示)選擇“常規(guī)”,“ java應用程序”,然后轉(zhuǎn)入下一步。
(2)向?qū)У牡诙饺鐖D2所示,需要設(shè)置項目的一些信息。我們把項目名稱定為NoteSys,設(shè)置好項目保存位置,此時先不創(chuàng)建主類,所以去掉創(chuàng)建主類復選框的對號,單擊完成即創(chuàng)建好一個項目
(3)項目建立之后NetBeans界面如圖3:
知識點整理:
l 從圖1可以看到,使用NetBeans還可以創(chuàng)建web程序和企業(yè)程序,我們這里創(chuàng)建的是桌面應用程序。
l 可以在建立項目時創(chuàng)建主類,也可以不創(chuàng)建,留到項目建立好后再創(chuàng)建
l 項目建立好之后就可以在NetBeans IDE環(huán)境中看到剛才創(chuàng)建的項目(圖3)。NetBeans的文件組織分為兩種方式:項目組織方式和文件組織方式。
項目組織方式中整個項目(NoteSys)包括:源包、測試包、庫和測試庫,源包再由若干java文件構(gòu)成。
文件組織方式按照實際的物理存放目錄組織,即項目在硬盤上的存放路徑。整個項目(NoteSys)包括src、build等幾個文件夾。l 項目建立好后,在源包上單擊右鍵可以創(chuàng)建包和其他的java文件,在創(chuàng)建的包上單擊右鍵也可以創(chuàng)建各種java文件,見圖4
經(jīng)過這樣幾個步驟,我們就建立了一個桌面程序項目NoteSys,接下來就是在IDE中對項目進行開發(fā),首先我們先看如何建立程序的界面。
二、構(gòu)建記事本GUI界面 NetBeans IDE 的 GUI 生成器經(jīng)過了不斷的改進,截至 NetBeans 5.0 版本時,它已變得更為強大、更具直觀性了。用戶無需深入了解布局管理器,就可以生成具有專業(yè)外觀的 GUI。在NetBeans中以可視化的方式來生成界面,我們只需將組件放置在所需的位置,就可以完成窗體布局的設(shè)置。下面的步驟將帶領(lǐng)大家制作記事本的界面,也會讓大家領(lǐng)略到NetBeans中構(gòu)建GUI界面的方便和高效。
1、建立窗體
在項目視圖的源代碼包上單擊右鍵創(chuàng)建一個包(包名為qiu.notesys),然后在qiu.notesys包上單擊右鍵創(chuàng)建一個jFrame類(類名為WinNote.java),此即為記事本的窗體,我們將在該窗體上添加其他組件構(gòu)建記事本的界面。如圖5
根據(jù)圖5,NetBeans 的GUI 生成器的各種窗口包括:
l 項目和文件區(qū)域:顯示整個項目的文件,采用項目和文件兩中方式組織。可以通過該窗口管理java文件,包括對java文件的新建,刪除,編譯,運行等操作 l 檢查器:提供所有組件的表示,包括在應用程序中表示為樹狀分層結(jié)構(gòu)的可視和非可視組件。并允許您在可用面板中組織這些組件,而且添加組件,設(shè)置組件的屬性和事件也可以在檢查器內(nèi)完成。
l 設(shè)計區(qū)域:GUI 生成器用于創(chuàng)建和編輯 Java GUI 窗體的主窗口。通過使用工具欄的“源”和“設(shè)計”切換按鈕,可以查看類的源代碼或其 GUI 組件的圖形視圖。
l 組件面板:可用組件的可定制列表,包含 JFC/Swing、AWT 和 JavaBean 組件的標簽以及布局管理器。此外,還可以使用定制器來創(chuàng)建、刪除和重新排列組件面板中顯示的類別。
l “屬性”窗口。顯示 GUI 生成器、“檢查器”窗口、“項目”窗口或“文件”窗口中當前選定組件的屬性。
l 調(diào)試和輸出窗口:位于窗口的最下方,顯示調(diào)試程序的信息和輸出信息。注意:如果單擊“源”按鈕,IDE 將在編輯器中顯示應用程序的 Java 源代碼,其中包含 GUI 生成器自動生成的代碼部分,這部分以藍色區(qū)域表示,稱為“被保護的塊”。被保護的塊是“源”視圖中無法編輯的受保護區(qū)域。處于“源”視圖中時,只能編輯出現(xiàn)在編輯器白色區(qū)域中的代碼。如果需要對被保護的塊中的代碼進行更改,請單擊“設(shè)計”按鈕以便從 IDE 的編輯器切換到 GUI 生成器,然后在生成器中對窗體進行必要的調(diào)整。保存更改時,IDE 將更新文件的源代碼 窗體建立好了,整個界面的基礎(chǔ)也就有了。下面我們就可以在該窗體上添加其他組件,來完成整個界面工作了。
2、添加菜單(1)加入菜單
l 在組件面板中選擇JMenuBar,將其拖拽入我們的JFrame主窗體。
l 在設(shè)計視圖時,屏幕右側(cè)的檢查器會檢查出所有的可視組件,我們在檢查器中找到剛才推拽的JMenuBar,點擊右鍵,在右鍵彈出菜單中選擇【更改變量名稱…】,此時彈出重命名窗體,我們在新建名稱中填寫jmb,然后點擊“完成”按鈕,此時我們的JMenuBar就成功創(chuàng)建了。
l 對于每個菜單來說,還需要創(chuàng)建一個菜單對象,然后把此頂層菜單添加到菜單欄中,接著在菜單對象中添加菜單項、分隔符以及子菜單。對于【文件】è【新建】而言,我們應首先將【文件】這個菜單對象創(chuàng)建,然后將【新建】菜單項添加到【文件】菜單選項中。參考圖6,具體步驟如下:
i.在檢查器中,右鍵點擊jmb,在彈出菜單中,選擇【添加JMenu】,此時檢查器中在jmb下面添加了一個新的JMenu菜單對象。
ii.右鍵點擊JMenu菜單對象,在彈出的右鍵菜單中選擇【更改變量名稱…】,將其新建名稱更改為“fileMenu”。
iii.右鍵點擊“fileMenu”菜單對象,在彈出菜單中選擇【添加】è【JMenuItem】(可在此菜單中添加菜單項,分隔符,子菜單等),此時在“fileMenu”菜單對象中添加了一個菜單項,我們將此菜單項更名為“newMenu”。這樣文件菜單和新建菜單項就建立好了。
知識點整理: l 添加組件的方法
(1)到組件面板單擊需要的組件
(2)移動鼠標到窗體,此時剛單擊過的組件會跟隨鼠標移動,并且靠近窗體邊緣或其他組件附近時,會出現(xiàn)虛線來指示放置組件的位置。(3)確定好放置位置后,再次單擊鼠標即可把組件添加好 l 修改組件大小
添加組件之后,單擊組件,組件周圍會出現(xiàn)一些白色方塊,把鼠標移動到其上,拖動鼠標則可改變組件大小
右擊組件,在菜單中選中“自動調(diào)整大小”的垂直和水平菜單,則運行程序時,組件會隨著窗口的大小變化而變化。l 對齊組件 添加組件時,NetBeans提供了虛線指示,所以很容易對齊組件。此外,按住shift鍵選擇多個組件,使用設(shè)計區(qū)域上方的一組對齊按鈕也可對齊組件 l 菜單組件
NetBeans 中通過JMenuBar組件來創(chuàng)建菜單,添加JMenuBar后,通過右擊檢查器中的JMenuBar可以添加頂層菜單,通過右擊頂層菜單可以添加菜單項和分割線等,而頂層菜單和菜單項的變量名稱和顯示文字等可以通過其右鍵菜單來設(shè)置。
(2)關(guān)于菜單的幾個操作 l 給菜單添加圖標
菜單項顯示圖標會使菜單看上去更加美觀,而且含義清晰的圖標也會增加程序的易用性,所以我們有時需要給菜單添加一些圖標。方法如下:
右擊源包建立一個包(名稱為res),通過該包的物理路徑向該包內(nèi)放一些圖標,然后打開菜單項的屬性窗口,通過菜單的ico屬性,指定類路徑選項,然后選擇包res中的圖標文件就可以把圖標加入到菜單中。下面以新建菜單為例:
在檢查器中,右鍵點擊“newMenu”,在彈出菜單中,選擇【屬性】,此時彈出一個可以修改屬性和事件的對話框,我們選擇屬性選項卡,找到ico屬性,點擊ico屬性對應的按鈕,如圖7:
此時彈出一個圖片選擇對話框,我們選擇類路徑,并在當前類路徑下選擇圖片文件,點擊“確定”按鈕,這時我們菜單的圖片就添加上了 l 給菜單設(shè)置加速鍵
加速鍵的作用就是程序運行中可以通過使用ALT加字母的方式快速打開菜單。NetBeans中,在菜單的text屬性指定的名字后面加上一個括號和一個大寫字母,例如新建的text為“新建(N)”然后把屬性mnemonic設(shè)置成剛才指定的大寫字母即可,此時通過ALT加該字母就可以訪問該菜單了 l 給菜單設(shè)置快捷鍵
菜單的快捷鍵可以使用戶用快捷鍵來執(zhí)行某個菜單的操作。切換到代碼編輯器窗口,在代碼編輯器中創(chuàng)建一個方法setMenuAccelerator,在方法中為需要設(shè)置快捷鍵的菜單加入設(shè)置語句即可,新建菜單的快捷鍵設(shè)置如下
這樣,當我們按下Ctrl+N時,就可執(zhí)行新建命令了。最后在主類(WinNote.java)的構(gòu)造方法中調(diào)用該方法即可。知識點整理:
l NetBeans中,在可視化的方式中就可以順利完成菜單的各種復雜設(shè)置,包括頂層菜單、菜單項、分割線等的添加以及其他菜單的相關(guān)設(shè)置
l 菜單使用的圖標我們事先放到了一個包內(nèi),然后以類路徑的方式加入到了菜單中,這樣類路徑并不依賴某個具體路徑,所以使程序易于移植。(3)按照剛才的方法給記事本添加表1所示的菜單 菜單項 菜單變量名 快捷鍵 加速器
【文件】è【新建】 【fileMenu】è【newMenu】 FèN Ctrl+N 【文件】è【打開】 【fileMenu】è【openMenu】 FèO Ctrl+O 【文件】è【保存】 【fileMenu】è【saveMenu】 FèS Ctrl+S 【文件】è【退出】 【fileMenu】è【exitMenu】 FèX
【編輯】è【剪切】 【editMenu】è【cutMenu】 EèT Ctrl+X 【編輯】è【拷貝】 【editMenu】è【copyMenu】 EèC Ctrl+C 【編輯】è【粘貼】 【editMenu】è【pasterMenu】 EèP Ctrl+V 【編輯】è【全選】 【editMenu】è【selectAllMenu】 EèA Ctrl+A 【格式】è【顏色】 【editMenu】è【colorMenu】 EèF Alt+F 【幫助】è【關(guān)于】 【helpMenu】è【aboutMenu】 HèA
3、添加工具欄
NetBeans中,工具欄由JToolBar組件和按鈕(JButton)組件組合起來實現(xiàn)的。我們首先在組件面板中找到JToolBar組件,并將其拖入我們的主窗體,然后根據(jù)需要在jtoolBar中放置一些按鈕,設(shè)置好按鈕的ico(圖標)和tooltiptext(按鈕提示)屬性
設(shè)計表2所示的工具欄
放置順序 變量名稱 功能 工具提示 1 newButton 新建文件 新建 openButton 打開本地文件 打開 3 saveButton 保存文件到本地 保存 4 cutButton 剪切 剪切 5 copyButton 拷貝 復制 6 plasterButton 粘貼 粘貼
4、加入文本框
NetBeans提供幾個顯示編輯文本的組件,我們使用JTextArea來實現(xiàn)。從面板中找到JTextArea,加入到窗體上
這樣,我們的記事本界面就制作完畢了,在項目窗口中,找到WinNote.java,右擊選擇編譯文件,NetBeans則對該文件進行編譯,編譯成功后,在運行文件即可啟動程序,運行效果如圖8:
三、打開與保存
在上一節(jié)中我們已經(jīng)完成了記事本的界面,也從中學習了一些構(gòu)建GUI的方法和技巧。從本節(jié)開始將要討論記事本的功能開發(fā),先看如何打開和保存文件。當然在敘述過程中會講解如何使用NetBeans的代碼編輯器的一些用法。
1、打開文件
使用記事本打開一個已有的文本文件需要涉及到如下問題: l 如何控制要打開文件的類型,即只能打開文本文件 l 打開對話框如何實現(xiàn)
l 如何從硬盤上讀入文件內(nèi)容到記事本中 下面依次討論這三個問題的解決方案
(1)控制要打開文件的類型——FileFilter類
JAVA中的FileFilter類可以很好的解決這個問題,F(xiàn)ileFilter 是一個沒有默認實現(xiàn)的抽象類。一經(jīng)實現(xiàn)便可以設(shè)置在 JFileChoose上,以阻止不需要的文件出現(xiàn)在目錄清單中。所以我們自己寫一個類繼承自FileFilter,然后實現(xiàn)FileFilter類的方法即可,具體如下:
l 右擊qiu.notesys包新建一個類(名稱為TextFilter),此時該類的內(nèi)容如下
l 在類名TextFilter后輸入extends FileFilter,即繼承自FileFilter類。此時NetBeans代碼編輯器會自動掃描代碼,發(fā)現(xiàn)該行代碼的錯誤并且用紅線標出,這時把鼠標移動到該行,NetBeans會提示你錯誤的原因:由于我們并沒有引入FileFilter類就直接使用了,所以這里提示“找不到FileFilter類”,單擊該行任意位置會在行左邊出現(xiàn)一個燈泡,單擊燈泡,NetBeans會給出你修改錯誤的方法,現(xiàn)在從提示里選擇“添加javax.swing.filechooser.FileFilter的import”,NetBeans就會自動把對FileFilter類的引入加上,而不需要我們?nèi)ナ謩犹砑印4送猓驗镕ileFilter類是一個抽象類,所以必須實現(xiàn)其所有的抽象方法,因此現(xiàn)在還提示有錯誤,再次單擊該行,從燈泡的提示中選擇“實現(xiàn)所有抽象方法”,NetBeans就會自動把FileFilter的所有抽象方法添加上,此時代碼窗口內(nèi)容如下: 其中標紅的都是代碼編輯器自動添加的。從此處也可以看出使用NetBeans寫代碼會非常的省時省力。
l 最后我們實現(xiàn)TextFilter類的抽象方法,代碼如下
這樣就實現(xiàn)了一個只顯示“txt”或“doc”類型文件的過濾器類TextFilter,用他可是方便的過濾文件。知識點整理: l 代碼編輯器可以自動查找代碼錯誤,并標出紅線提示,此時把鼠標放到錯誤行上面會出現(xiàn)錯誤原因的提示
l 單擊錯誤行前的小燈泡,代碼編輯器會給出修改錯誤方案并能自動修復錯誤 l 書寫代碼時可以不用過分考慮代碼的縮進格式,代碼寫完后使用“Ctrl+Shift+F”組合鍵,代碼編輯器會自動調(diào)整代碼格式(2)打開已有文件——jFileChooser組件
NetBeans提供了一個文件選擇組件——jFileChooser,為用戶選擇文件提供了一種簡單的機制,使用他可以方便調(diào)用打開對話框和保存對話框。我們首先添加一個jFileChooser,其用法在下一步中介紹。添加該組件的具體操作是:
在項目中選擇WinNote,切換到設(shè)計視圖,此時檢查器中會顯示W(wǎng)inNote的所有組件以及組件之間的組織層次,由于打開對話框是獨立的,并不依附主窗口,所以我們把該組件添加到“其他組件”內(nèi),在“其他組件”上右擊,從組件面板上添加——SWING——jFileChooser,即可把jFileChooser添加到項目中,此后我們就可以使用它了。
(3)讀入文件——java中的I/O操作
JAVA中為實現(xiàn)文本輸入輸出提供一些專門的類,常用的有FileReader、FileWriter和BufferedReader、BufferdWriter幾個類。這里我們綜合利用BufferedReader、FileReader以及剛才的jFileChooser組件來完成對文件的打開操作,此外,打開操作是通過打開菜單來激發(fā)的,所以我們首先實現(xiàn)打開菜單的事件,參見圖9 l 切換到WinNote的設(shè)計視圖
l 到檢查器窗口找到“打開”菜單并選中(此時右擊也可添加一個事件)
l 右側(cè)的屬性窗口會顯示該菜單的相關(guān)信息,選擇事件,該窗口就列出了該菜單支持的所有的事件
l 找到actionPerformed事件,單擊后面的按鈕,就可以打開添加事件的對話框,添加一個事件即可
添加好事件后,給事件添加如下代碼:
知識點整理:
l NetBeans中通過屬性窗口可以方便的給組件和菜單添加事件和管理事件,而不用考慮過多的事件內(nèi)部細節(jié) l JAVA中的輸入輸出
(1)FileReader類是用來讀取字符文件的便捷類,在給定了需要讀取數(shù)據(jù)的文件名的情況下創(chuàng)建一個新 FileReader,然后使用其read方法可以讀取字符流,但其所作的每個讀取請求都會導致對基礎(chǔ)字符或字節(jié)流進行相應的讀取請求,效率很低。
(2)BufferedReader從字符輸入流中讀取文本,緩沖各個字符
(3)根據(jù)(1)(2),我們可以用 BufferedReader 包裝read()操作效率很低的FileReader,采用如下方式:
BufferedReader in = new BufferedReader(new FileReader(filename));這樣,用FileReader讀取指定的文件,然后用BufferedReader來緩沖,最后在用read或readline方法讀取文件。避免了每次調(diào)用 read()或 readLine()都會從文件中讀取字節(jié),并將其轉(zhuǎn)換為字符后返回的低效做法
此外,F(xiàn)ileWriter是寫入字符文件的便捷類,用于寫入字符流。BufferdWriter類提供緩沖,因此也可以綜合使用這兩個類完成寫入文件的操作。
2、保存文件
保存文件的實現(xiàn)和打開非常類似,也是通過TextFilter類控制保存的文件類型,通過jFileChooser來調(diào)用保存對話框,通過文件輸入輸出操作來寫文件。具體做法請讀者自己研究。
四、其他功能的實現(xiàn) 有了打開與保存,我們的記事本已經(jīng)可以操作文件,本節(jié)將帶領(lǐng)大家完成記事本剩余的幾個重要功能。
1、剪切操作
添加好剪切菜單的actionPerformed事件,在事件內(nèi)寫如下代碼 editor.cut();其中editor是文本框jTextArea。這樣就實現(xiàn)了剪切操作,其余的全選、復制、粘貼與此類似,不再細說
2、文本顏色
NetBeans提供了一個jColorChooser組件,使用它可以方便的實現(xiàn)顏色設(shè)置。該組件顯示有模式的顏色選取器,在隱藏對話框之前一直阻塞。如果用戶按下“OK”按鈕,則此方法隱藏/釋放對話框并返回所選顏色。如果用戶按下“Cancel”按鈕或者在沒有按“OK”的情況下關(guān)閉對話框,則此方法隱藏/釋放對話框并返回 null。因此,我們添加一個jColorChooser,利用它選取顏色即可。參見圖10 在檢查器窗口內(nèi)右擊“其它組件”,添加一個jColorChooser,修改變量名為ColorChooser,然后添加顏色菜單的事件,在事件內(nèi)加入如下代碼:
第一句代碼創(chuàng)建了一個Color對象,該對象返回了jColorChooser組件中被選擇的顏色(jColorChooser的構(gòu)造方法中的三個參數(shù)分別是:對話框的父
Component,對話框標題和顯示顏色選取器時的初始 Color 設(shè)置),第二句代碼則是設(shè)置文本顏色。
3、撤銷操作
JAVA中提供了撤銷管理器類——UndoManager,通過該類提供的方法,我們可以方便實現(xiàn)撤銷與恢復操作,具體操作如下:
l 首先聲明一個UndoManager的對象,代碼如下: UndoManager undoManager = new UndoManager();l 因為撤銷和恢復都是針對文本框進行的,所以需要對文本框jTextArea進行監(jiān)視,打開文本框的AncestorAdded事件,填入如下代碼
這樣撤銷管理器就有效的對文本進行監(jiān)視,一旦需要撤銷或恢復操作,直接調(diào)用撤銷管理器的方法即可
l 最后在撤銷菜單的actionPerformed事件中寫一句“undoManager.undo();”,在恢復菜單的actionPerformed事件寫一句“undoManager.redo();”就可以了。
4、新建與退出
新建與退出都會涉及到如下兩個問題: l 如何判斷文檔是否發(fā)生變化
l 若文檔已改變,如何調(diào)用對話框詢問用戶是否保存當前文檔
對于第一個問題,文本組件jTextArea沒有提供相關(guān)方法,但是我們可以定義一個全局變量,讓他存儲初始的文檔內(nèi)容,然后新建或退出時在比較該變量和當前文檔內(nèi)容,相同則不必詢問是否保存,否則調(diào)用對話框詢問是否保存。
對于第二個問題,使用jOptionPane組件即可實現(xiàn),JOptionPane 有助于方便地彈出要求用戶提供值或向其發(fā)出通知的標準對話框,對JOptionPane組件的方法調(diào)用通常有如下幾個: 方法名 描述
showConfirmDialog 詢問一個確認問題,如 yes/no/cancel。showInputDialog 提示要求某些輸入。
showMessageDialog 告知用戶某事已發(fā)生。
showOptionDialog 上述三項的大統(tǒng)一(Grand Unification)。
每個調(diào)用方法的參數(shù)很多,這里不再細說,請查看API手冊,我們使用JOptionPane組件的第一個方法showConfirmDialog來實現(xiàn)新建和退出需要的對話框。
(1)新建代碼
(2)退出
退出代碼與新建類似,也是判斷文檔是否改變,然后通過對話框提示用戶是否保存,然后在退出。
5、幫助與關(guān)于窗口的制作
關(guān)于的主要目的是通過一個窗口展示有關(guān)于程序的一些信息和作者的相關(guān)信息,這里我們建立一個jPanel窗口類,然后在窗口上添加JTabbedPane、jPanel、jLabel等幾個組件就可以實現(xiàn)了。具體操作如下: l 右擊qiu.notesys包,添加一個jPanel窗口類 l 找到檢查器中的jPanel,右擊,添加JTabbedPane組件,再右擊JTabbedPane,添加兩個jPanel組件,這時JTabbedPane就有了兩個選項卡:tab1和tab2,這兩個選項卡是由jPanel組件構(gòu)成的。最后在分別給兩個選項卡添加幾個jLabel。
l jLabel組件可以顯示文字和圖片,所以根據(jù)情況添加相關(guān)信息就可以了,最后通過主類WinNote的關(guān)于菜單調(diào)用該窗口即可。效果如圖11:
知識點整理
l 全選、復制、粘貼和剪切等操作使用jTextArea組件自身的方法就可以實現(xiàn) l 文本顏色使用jColorChooser組件實現(xiàn)。我們并沒有講解如何實現(xiàn)字體設(shè)置功能,因為NetBeans沒有提供字體對話框組件,需要我們自己設(shè)計實現(xiàn)字體對話框的功能,因為有些復雜,所以沒有講,請參看我的源代碼
l 撤銷操作有撤銷管理器類UndoManager實現(xiàn),可以連續(xù)多次撤銷或恢復 l 新建與退出用到了JOptionPane組件,它可以方便地彈出要求用戶提供值或向其發(fā)出通知的標準對話框
l 幫助和關(guān)于窗口使用了JTabbedPane組件,它允許用戶通過單擊具有給定標題和圖標的選項卡,在一組組件之間進行切換,一般采用jPanel組件作為選項卡間的切換組件。
五、NetBeans中的項目操作 經(jīng)過前面的學習,相信大家已經(jīng)能夠做出一個簡易的記事本程序了,接下來就要思考如何完成這個項目,并且能夠讓項目獨立運行。現(xiàn)在,我們來學習NetBeans中對整個項目的幾個操作。
1、運行項目 l 設(shè)置主類
我們知道JAVA必須從主類開始運行程序,所以需要指定好主類。一般在我們創(chuàng)建項目時就指定好了主類,如果沒有可以右鍵單擊項目節(jié)點,選擇“屬性”,然后在對話框左窗格中選擇“運行”節(jié)點,從這里可以設(shè)置主類。
l 運行主項目
從“運行”菜單中選擇“運行”——“ 運行主項目”(或使用F6鍵)。NetBeans就會編譯并運行程序,然后輸出結(jié)果,雙擊“輸出”窗口將其最大化,以便查看所有輸出內(nèi)容。按 F6 鍵再次運行程序。但這次只是運行程序,并不需要編譯任何新內(nèi)容。
2、清理并生成項目
l 選擇“生成”——“ 清理并生成主項目”(Shift-F11)。將清理項目,然后將其作為進程的一部分重新生成。
3、生成Javadoc l 選擇項目
l 從 IDE 的主菜單中,選擇“生成”——“為NoteSys生成 Javadoc”。IDE 將在“輸出”窗口中顯示 Javadoc 輸出,并打開 Web 瀏覽器以顯示 Javadoc
4、調(diào)試項目
l 打開記事本的WinNote.java 文件,轉(zhuǎn)至打開菜單的事件代碼,并將插入點放在“t=in.readLine();”,然后按 Ctrl-F8 組合鍵給該行設(shè)置一個斷點(或鼠標單擊行號)。
l 選擇“運行”——“ 調(diào)試主項目”(F5)。IDE 將打開調(diào)試器窗口,并在調(diào)試器中運行該項目,啟動記事本程序后,單擊記事本的文件菜單——打開,這時程序執(zhí)行到了斷點處,停止
l 選擇“局部變量”窗口,會看到這里列出了很多的局部變量值,選擇變量t,此時t為空值(因為還沒有讀入數(shù)據(jù))。
l 在工具欄中單擊“步入”(F7),逐步執(zhí)行程序并觀察變量t,會發(fā)現(xiàn)t在一行一行的把文件的內(nèi)容讀取出來。
l 單擊“運行”菜單——“繼續(xù)運行”(ctrl+F5)就會關(guān)閉調(diào)試器窗口,繼續(xù)執(zhí)行到程序到完畢
總之,F(xiàn)6是正常運行程序,F(xiàn)5是調(diào)試運行,會打開調(diào)試器窗口,以方便觀察程序運行情況,F(xiàn)7是單步運行程序。此外還可以在程序代碼中設(shè)置斷點,以便有效的觀察斷點處代碼的情況。
第二篇:java項目實訓總結(jié)
實訓總結(jié)
通過此次短暫的作業(yè)設(shè)計,我深有感觸。從一開始的構(gòu)思再到今天寫下這份總結(jié)。期間時間雖短但是也學到了不少的知識。在剛開始構(gòu)想只有大體的思路,忽略了一些細節(jié),因此在我真正做設(shè)計方案時發(fā)現(xiàn)有很多錯誤,有的時候要解決一個錯誤反反復復會花上很多時間。在做的過程中,也會有很多意想不到的錯誤,其中有的錯誤到最后解決的時候卻是發(fā)現(xiàn)犯得很幼稚,不過這樣的錯誤多了,在不知不覺中對一些命令知識分外的熟悉了起來,并且自身的排錯能力也得到很大的提高。
此次的方案設(shè)計,讓我第一次摸索java的需求去構(gòu)建框架,在設(shè)計過程中總是會遇到一些很小的問題,雖然不明顯,卻可以影響到整個軟件的運作。
在這次實習過程中,我發(fā)現(xiàn)平時學習的知識與實踐環(huán)節(jié)所用到的有一定的差距,往往我覺得自己掌握的很好或者自認為熟練的技術(shù)卻在此次實踐環(huán)節(jié)中往往出問題,書本上的知識只提供方法的借鑒,實踐中自己必須摸索出適合具體工作的方法,這一切都離不開鉆研精神與勤學好問的精神.在人與人相處過程中我收獲更大,首先要謙虛謹慎,不能自以為是,認為自己懂得很多,而僅僅埋頭苦干,而不向他人請教,工作不但是實踐與應用的過程,同時也是學習的過程,我們必須加強與他人的溝通學習,以便獲得與他人的交流。
這次作業(yè)設(shè)計的時間很緊迫,再加上各方面的經(jīng)驗不足,也遇到很多問題,雖然我通過網(wǎng)上查詢,咨詢同學去解決我以發(fā)現(xiàn)的問題,但我知道這個軟件還有很多地方?jīng)]有完善,希望老師能諒解。但是總的來說,這次課程設(shè)計對我很有幫助,讓我獲益匪淺,使我在這方面的知識有了不小的提高。
第三篇:Java實訓項目
實訓項目:學生信息管理
一、實訓的性質(zhì)、目的與任務
計算機信息管理專業(yè)的java實訓在教學計劃中是實訓、實習課程。它涵蓋了java開發(fā)和工程組織、數(shù)據(jù)結(jié)構(gòu)等多項相關(guān)知識。
由于計算機技術(shù)不斷發(fā)展,尤其是軟件開發(fā)的發(fā)展,使得計算機軟件的使用已滲透到各行各業(yè),因此社會對軟件開發(fā)人才的需求不斷增大。整個實訓課程教學內(nèi)容從應用的角度出發(fā),在理論和實踐上掌握java工程開發(fā)的理念、類的組織、類的結(jié)構(gòu)關(guān)系、面向?qū)ο笾辛鞯氖褂玫燃夹g(shù)。使學生能獨立設(shè)計基于Eclipse控制臺開發(fā)的小型系統(tǒng)。
本次實訓重點和難點:
利用java搭建工程文件結(jié)構(gòu);B/S程序;數(shù)據(jù)庫前后臺程序;C/S程序。
二、實訓內(nèi)容和實訓要求
1.實訓內(nèi)容
(1).掌握Eclipse中工程的使用,項目的調(diào)試、編譯、鏈接、運行。
(2).面向?qū)ο蟪绦蛟O(shè)計中類的組織和類之間的關(guān)系分析。
(3).構(gòu)造函數(shù)的應用。
(4)繼承和派生的使用
(5).多態(tài)性和接口的使用。
(6).網(wǎng)絡(luò)編程的組織與使用。
2、教學手段與教學方法
充分利用多媒體設(shè)備組織教學。在備課時,教師將一部分實訓內(nèi)容的步驟制作成課件,在教學中通過投影演示教學,另一部分部分的實訓內(nèi)容進行現(xiàn)場教學,讓學生邊聽講,邊練習。學生的學習興趣得到激發(fā),動手能力也得到了鍛煉和提高。最后將實訓的最終效果演示。
本實訓要以能力培養(yǎng)為主線,強化實踐性教學,突出“理論教學為實踐教學服務”的教改重點。
3.實訓要求
學會Eclipse完成工程的創(chuàng)建;掌握面向?qū)ο笾蓄悺⒗^承、多態(tài)性的開發(fā)思想;掌握網(wǎng)絡(luò)編程的概念; 獨立設(shè)計B/S螃蟹過街游戲;考試管理管理系統(tǒng);C/S網(wǎng)絡(luò)
三、實訓方案
教科書 264頁
15.1——15.5標題 即可
四、實訓結(jié)果與分析
自己分析
五、實訓總結(jié)、體會:
通過這一期的實訓,雖然實訓的時間不長,但是總體上收獲挺大的,當我們正式準備學習實訓java編程技術(shù)時,讓我感到非常高興,因為java一直學的是課本知識,所以實訓對于我來說是必須要學會熟練操作的。當然開始學習后也并非是想象中那樣順利,開始的學習讓我異常感到學習任務的艱巨,因為學習中我遇到了很多以前未曾遇到的難點,有時后也難免會失去耐心,但是,通過老師的指導,自己的努力的練習,我順利的化解了一道道的障礙。克服了Java學習上的一道道難關(guān),現(xiàn)在自己已經(jīng)基本掌握了java的基礎(chǔ)知識,實訓即將結(jié)束了,我非常懷念大學的校內(nèi)實訓,在實訓的這短短半個月時間里,我每一天過的都市踏實的,充實的;
五、實訓總結(jié)、體會:
時光如梭,光陰似箭,JAVA實訓一晃而過,回想起整個學習過程,心里感觸頗多。由于大
一、學了C語言,從未學過JAVA,但我喜歡編程,也算是愛屋及烏吧,JAVA實訓剛開始時當然很難通過兩個月的實訓,我感到自己學到了很多東西,雖說不精,但已經(jīng)入門,于世間萬物之中,遇見我所遇見的事物;于千萬年之中,時間的無涯荒野里,沒有早一步,也沒有晚一步,剛巧趕上了,上蒼讓我有機會接觸編程,給了我一條路。我很清楚以后的路還很長,再長的路,一步步也能走完,再短的路,不邁開雙腳也無法到達。任何業(yè)績的質(zhì)變都來自于量變的積累,成功不是將來才有的,而是從決定去做的那一刻起,持續(xù)累積而成,讓我們將事前的憂慮,換為事前的思考和計劃吧!在實訓的過程中,我深深感覺到自身所
學知識的有限
五、實訓總結(jié)、體會:
有些知識點以前沒有學過,但我也沒有去研究,實訓時突然間覺得自己真的有點無知,雖然現(xiàn)在去看依然可以解決問題,但要浪費許多時間,這一點是我必須在以后的學習中加以改進的地方,同時也要督促自己在學習的過程中不斷的完善自我。另外一點,也是在實訓中必不可少的部分,就是同學之間的互相幫助。所謂”當局者迷,旁觀者清”,有些東西感覺自己做的是時候明明沒什么錯誤,偏偏程序運行時就是有錯誤,讓其他同學幫忙看了一下,發(fā)現(xiàn)其實是個很小的錯誤。所以說,相互幫助是很重要的一點,這在以后的工作或生活中也是很關(guān)鍵的。俗話說:“要想為事業(yè)多添一把火,自己就得多添一捆材”。此次實訓,我深深體會到了積累知識的重要性。在實訓當中我們遇到了不少難題,但是經(jīng)過我們大家的討論和老師細心的一一指導,問題得到了解決。兩個月的實訓結(jié)束了,收獲頗豐,同時也更深刻的認識到要做一個合格的程序員并非我以前想像的那么容易,最重要的還是細致嚴謹。社會是不會要一個一無是處的人的,所以我們要更多更快地從一個學生向工作者轉(zhuǎn)變,總的來說我對這次實習還是比較滿意的,它使我學到了很多東西,為我以后的學習做了引導,點明了方向,我相信在不遠的未來定會有屬于我們自己的一片美好天空!
第四篇:Java項目實訓文檔格式說明
項目實訓文檔格式說明
軟件需求說明書(粗宋體小二號)
一、引言(粗黑體四號)
1.編寫目的(黑體小四號)
說明編寫這從軟件需求說明書的目的。(宋體小四號)
2.背景(黑體小四號)
說明:待開發(fā)軟件系統(tǒng)的名稱;本項目的任務提出者、開發(fā)者、用戶及實現(xiàn)該軟件的計算中心或計算機網(wǎng)絡(luò);該軟件系統(tǒng)同其他系統(tǒng)或其他機構(gòu)的基本相互往來關(guān)系。(宋體小四號)
……
二、任務概述(粗黑體四號)
1.目標(黑體小四號)
……(宋體小四號)
2.用戶特點(黑體小四號)
……(宋體小四號)
三、需求規(guī)定(粗黑體四號)
1.對功能的規(guī)定(黑體小四號)
(宋體小四號)
2.對性能的規(guī)定(黑體小四號)
……(宋體小四號)
四、運行環(huán)境規(guī)定(粗黑體四號)
??紙張為A4幅面;
??正文段首縮進兩個字符;
?頁邊距:上、下、左、右均為2.5cm;
? 正文內(nèi)容行距為22磅;表格行距為單倍;
? 一級標題,即文章標題用粗宋體小二號,二級標題用粗黑體4號,三級標題用黑體
小四號,正文用宋體小四號;
? 圖中文字、表頭、圖像標注用宋體5號。
第五篇:Java服務器端項目實訓心得體會
歷時四周的實訓在緊張但卻充實的氣氛中順利結(jié)束了,我的內(nèi)心充滿了感慨。在這次項目實訓中,我主要負責的系統(tǒng)管理子系統(tǒng)模塊、用戶登錄接口模塊和整個項目的測試任務。在系統(tǒng)管理子系統(tǒng)模塊,我實現(xiàn)了創(chuàng)建用戶、創(chuàng)建組、修改密碼、重置密碼、參數(shù)設(shè)置、登錄日志的插入與查詢顯示等功能。在這一部分,我主要是按照老師介紹的三層框架的知識記性的實現(xiàn),即:首先根據(jù)數(shù)據(jù)庫實體書寫model層,然后dao層書寫sql語句,實現(xiàn)對數(shù)據(jù)庫的簡單的增刪查改,接著在bll層書寫系統(tǒng)的業(yè)務邏輯,最后在action層實現(xiàn)與前臺頁面的數(shù)據(jù)傳輸。在用戶登錄接口模塊,我實現(xiàn)了給移動端提供登錄接口和修改密碼接口的功能,這一部分需要匹配老師給的移動端的接口,才能順利完成跟移動端的對接。經(jīng)過這次實訓,我發(fā)現(xiàn)自己之前編代碼都非常沒有章法,通過建立框架,減少了很多多余代碼的書寫,節(jié)省了好多時間,代碼也更清晰明了,而且代碼書寫也更加規(guī)范,同時我也體會到了寫注釋的重要性,可以讓我們快速找到自己想找的地方,非常便捷。這次實訓我們是分組實現(xiàn),通過分組工作,我體會到了1+1>2的神奇魅力,彼此之間實現(xiàn)功能并不重復,但卻緊密相連,拼湊起了這個完整的系統(tǒng)。這次實訓,我們老師采用的上午講課,下午自己做的方式開展。由于時間緊張,老師經(jīng)常一上午就講兩三個知識點,我從是一下子不能接收那么多信息量,但是老師會給我們相應的練習,讓我們在練習中熟練掌握,效果非常好,自學能力也大大提高。這次實訓,我收獲頗豐,編程能力、團隊寫作能力、自學能力都得到了提升,當然這也少不了老師的悉心教導和及時解惑,以及小伙伴們的幫助,真心的感謝他們,讓我的實訓畫上了一個圓滿的句號。