計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文
《計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文》由會(huì)員分享,可在線閱讀,更多相關(guān)《計(jì)算機(jī)畢業(yè)設(shè)計(jì)論文(49頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 I摘摘 要要當(dāng)今,計(jì)算機(jī)以及網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,社會(huì)正快速向信息化社會(huì)前進(jìn),我們需要更智能,更專業(yè)的軟件幫助我們完成工作,從而提高了工作效率。目前文本編輯器種類很多,所提供的功能也很多,但是能滿足用戶實(shí)現(xiàn)多種功能和進(jìn)行 Java 的編譯與運(yùn)行很少,不能更好的適應(yīng)當(dāng)前用戶的要求。本設(shè)計(jì)所完成的文本編輯器功能是針對學(xué)習(xí) Java 程序語言,因此我們利用 Java程序設(shè)計(jì)虛擬機(jī)和軟件對用戶及使用者的應(yīng)用過程形成一整套完整的編寫代碼,編譯,運(yùn)行。本文本編輯器的開發(fā)主要包括界面窗口的菜單欄和工具欄以及樹結(jié)構(gòu),還有鏈接 Java 虛擬機(jī)實(shí)現(xiàn)編譯與運(yùn)行。使用 SUN 公司
2、的 Java 中的 GUI 作為開發(fā)技術(shù),利用其提供的各種類與接口,首先建立系統(tǒng)應(yīng)用原型。本文本編輯器的開發(fā)采用 JDK6.0 和 UltraEdit 為開發(fā)工具,操作系統(tǒng)為Windows98/Windows 2000/Windows XP 等。關(guān)鍵詞:面向?qū)ο蟪绦蛟O(shè)計(jì),GUI,文本編輯器,編譯,運(yùn)行河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 IIAbstractNow, computer and internet are experience a sharp development, the information automatic function is more and more powerf
3、ul, and our society is stepping in the information age. So, more Intelligence and more specialized soft are needed to help us improve the efficiency in job.At present the text editor type are many, the function provided are also many too, But can satisfy the user for many kinds of functions and can
4、use Java for the translation and debug are very few, so can not adapt current users request much better. This design completes the text editor function is aims at the Java beginner who study the Java program language,Therefore we use the Java programming hypothesized machine and software form an ent
5、ire set of complete compilation code to the formation users application process, translation, debug. This text editors development mainly includes the contact of surface menu of the window and the tool fence as well as the tree structure, also links to the java hypothesized machine to the translatio
6、n and debug. Use Java GUI API, and the classes of SUN Corporation to found the initial prototype system, then, carries on the demand iteration to the initial prototype system, unceasingly reversing and improvement, until forms the feasible system.This text editors development uses JDK6.0 and Ultra E
7、dit as the development kit, operate system for Windows98/ Windows 2000/ Windows/XP KeywordsKeywords: OOP, java, GUI(Graphical User Interface),text editor, translation, debug.河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 III目目 錄錄1 1 前前言言.1 12 2 問題的提出及可行性研究問題的提出及可行性研究.2 22.1 問題的提出及定義 .22.2 可行性研究 .32.2.1 對現(xiàn)行文本編輯器的分析 .32.2.2 新文本編輯
8、器的可行性研究分析 .33 3 用戶需求分析用戶需求分析.5 53.1 用戶調(diào)查 .53.2 確定目標(biāo)系統(tǒng)的功能 .54 4 系統(tǒng)設(shè)計(jì)與開發(fā)環(huán)境系統(tǒng)設(shè)計(jì)與開發(fā)環(huán)境.6 64.1 系統(tǒng)相關(guān)類的設(shè)計(jì).64.2 開發(fā)語言及其開發(fā)環(huán)境 .104.2.1 開發(fā)語言概述.104.2.2 Java 開發(fā)環(huán)境JDK 的介紹 .124.3 環(huán)境變量的設(shè)置 .134.3.1.環(huán)境變量的作用 .134.3.2 如何設(shè)置環(huán)境變量 .145 5 關(guān)鍵技術(shù)和源代碼的實(shí)現(xiàn)關(guān)鍵技術(shù)和源代碼的實(shí)現(xiàn).16165.1 關(guān)鍵技術(shù)剖析 .165.2 源碼分析 .176 6 系統(tǒng)測試系統(tǒng)測試.42426.1 測試方案 .426.2 測試
9、項(xiàng)目 .426.3 編輯器截圖演示 .43河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 IV致致 謝謝.4444參考文獻(xiàn)參考文獻(xiàn).4545河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 11 1 前前言言Java 可以方便的開發(fā) GUI 程序,在 Java 語言提供的 GUI 構(gòu)建工具中,可以分為“組件(component) ”和“容器” (container)兩種。組件有:按鈕,標(biāo)簽,復(fù)選框,單選按鈕,選擇框,列表框,文本框,滾動(dòng)條,畫布,和菜單等;容器有:程序的啟動(dòng)封面,窗體和對話框。本設(shè)計(jì)主要是通過AWT(抽象窗口化工具包)和 Swing 來實(shí)現(xiàn)功能的。本文本編輯器的設(shè)計(jì),能打開,編輯和保存 html,jav
10、a,cpp,txt 文件,能夠在文件中進(jìn)行查找和替換,而且支持 java 源文件的編譯與運(yùn)行,前提是機(jī)器上已經(jīng)安裝了 java 虛擬機(jī)并配置好了 java 相關(guān)的環(huán)境變量。此文本編輯器是集代碼編寫,源代碼編譯和類運(yùn)行于一體。河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 22 2 問題的提出及可行性研究問題的提出及可行性研究2.12.1 問題的提出及定義問題的提出及定義隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,文本編輯器成為大家必不可少的工具,但是不同的用戶對文本編輯器有不同的功能需求,所以除了像 office 中的word 還有去 WPS 等大眾文本編輯器,還需要一些帶有一定相關(guān)專業(yè)功能的文本編輯器,可以方便用戶進(jìn)行工
11、作與開發(fā)。 1、本設(shè)計(jì)就是針對 java 初學(xué)者所開發(fā)的,集源代碼編輯,編譯,運(yùn)行于一體的文本編輯器。2、根據(jù)此文本編輯器的的實(shí)際要求,本系統(tǒng)需要實(shí)現(xiàn)以下功能:3、要求在運(yùn)行該編輯器時(shí),可以直接編輯默認(rèn)的新建文件 File,在左邊的樹中正在編輯的文件顯示有 File1;4、要求在文本編輯器的右邊的文件文本域用于編輯文字和代碼,右邊中間的文字域時(shí)顯示光標(biāo)的行號(hào),右邊下面的文本域是顯示編譯和運(yùn)行信息;5、要求在窗口頂部設(shè)有菜單欄,分別有File,Option,Advance,Edit,Help;6、要求在菜單欄下面設(shè)有工具欄,分別有打開按鈕,新建按鈕,保存按鈕,幫助按鈕,推出按鈕,編譯按鈕,運(yùn)行按
12、鈕,復(fù)制按鈕,剪切按鈕,粘貼按鈕;7、要求能新建,打開和保存文件;若是新建文件則將新建文件保存為newFile1.txt,在編輯器左邊樹中正在編輯的文件顯示為 newFile1.txt,右邊的文件文本域所在的 Tab 標(biāo)簽上顯示的也是 newFile1.txt。8、要求能夠通過查找功能,在當(dāng)前文件中查找字符串,在彈出的對話框中輸入所要查找的字符串,點(diǎn)擊確定開始查找,找到后顯示高亮;9、要求能夠連接本機(jī)的 java 虛擬機(jī),對源代碼進(jìn)行編譯及編譯后運(yùn)行河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 32.22.2 可行性研究可行性研究2.2.1 對現(xiàn)行文本編輯器的分析市場上出現(xiàn)的和用戶所使用的文本編輯器種類
13、繁多,功能也是各式各樣,其中有相當(dāng)一部分是很優(yōu)秀的。但是面向 java 初學(xué)者的操作簡單的,界面友好的,集源代碼編輯,編譯,運(yùn)行于一體的編輯器并不多見。2.2.2 新文本編輯器的可行性研究分析根據(jù)此文本編輯器的使用對象,新目標(biāo)的提法不盡相同,例如:1、提高工作效率和降低難度;2、提供新的編譯與運(yùn)行處理功能;新編輯器的目標(biāo)確定后,就可以從以下三方面對能否實(shí)現(xiàn)新目標(biāo)進(jìn)行可行性分析:(1)技術(shù)可行性面向?qū)ο笫且环N新興的程序設(shè)計(jì)方法,或者說是一種新的程序設(shè)計(jì)規(guī)范(paradigm),其基本思想是使用對象、類、繼承、封裝、消息等基本概念來進(jìn)行程序設(shè)計(jì)。從現(xiàn)實(shí)世界中客觀存在的事物(即對象)出發(fā)來構(gòu)造軟件系
14、統(tǒng),并且在系統(tǒng)構(gòu)造中盡可能運(yùn)用人類的自然思維方式。開發(fā)一個(gè)軟件是為了解決某些問題,這些問題所涉及的業(yè)務(wù)范圍稱作該軟件的問題域。其應(yīng)用領(lǐng)域不僅僅是軟件,還有計(jì)算機(jī)體系結(jié)構(gòu)和人工智能等。許多程序開發(fā)工具,如 java、Visual Basic 6.0、Delphi 等等,都支持面向?qū)ο蟮某绦蜷_發(fā)。這些技術(shù)目前已經(jīng)成熟,被廣泛應(yīng)用與各個(gè)領(lǐng)域。運(yùn)用 GUI 中的 awt 和swing 以及相關(guān)的類完全可以實(shí)現(xiàn)所要求的功能。因此,其設(shè)計(jì)開發(fā)在技術(shù)上是可行的。(2)經(jīng)濟(jì)可行性經(jīng)濟(jì)可行性研究是對設(shè)計(jì)投入使用后帶來的經(jīng)濟(jì)效益進(jìn)行估計(jì)。本設(shè)計(jì)河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 4所消耗的物力與財(cái)力不多,關(guān)鍵是思
15、想架構(gòu),設(shè)計(jì)成功后可在互聯(lián)網(wǎng)上供用戶下載。經(jīng)濟(jì)效益與經(jīng)濟(jì)投資是很少的,也達(dá)到收支平衡。(3)運(yùn)行可行性系統(tǒng)設(shè)計(jì)并運(yùn)行于當(dāng)前流行的 Windows 系列操作系統(tǒng),具有 Windows 傳統(tǒng)的操作風(fēng)格,僅要求系統(tǒng)帶有 JVM(java 虛擬機(jī))。此文本編輯器操作簡單,界面友好,用戶可以立即使用??傊?,系統(tǒng)具有較好的運(yùn)行可行性。綜上所述,開發(fā)一個(gè)專門的 java 文本編輯器是可行的。河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 53 3 用戶需求分析用戶需求分析3.13.1 用戶調(diào)查用戶調(diào)查經(jīng)過詳細(xì)的調(diào)研,并多次與初學(xué) java 潛在用戶進(jìn)行研討后,首先加深了對 java 文本管理器的的深刻了解,其次,充分熟
16、悉 java 源代碼編輯,編譯和運(yùn)行。3.23.2 確定目標(biāo)系統(tǒng)的功能確定目標(biāo)系統(tǒng)的功能通過詳細(xì)的用戶調(diào)查,可以基本確定目標(biāo)系統(tǒng)要達(dá)到的目標(biāo)了。需求分析的任務(wù)是確定功能必須完成的工作,也就是對目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。在經(jīng)過多方了解和調(diào)查后,基本清楚了此文本編輯器的功能要求。必須完成的功能如下:(1) 文本新建功能;(2) 文本打開功能; (3) 文本保存功能;(4) 字符串查詢功能;(5) 源文件編譯功能;(6) 代碼運(yùn)行功能。河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 64 4 系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì)與開發(fā)環(huán)境與開發(fā)環(huán)境系統(tǒng)設(shè)計(jì)一般分為總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)。經(jīng)過需求分析階段的工作,已經(jīng)清楚
17、系統(tǒng)必須完成的工作,下面的工作就應(yīng)該是決定“如何做”的問題??傮w設(shè)計(jì)的基本目的就是“概括地說系統(tǒng)應(yīng)該如何實(shí)現(xiàn)?” 。另一方面的主要工作是設(shè)計(jì)軟件的結(jié)構(gòu),即確定系統(tǒng)都由哪些模塊組成及模塊之間的相互關(guān)系。4.14.1 系統(tǒng)相關(guān)類的設(shè)計(jì)系統(tǒng)相關(guān)類的設(shè)計(jì) 河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 7EditorPack ( );setLocatrion ( );setVisible ( );start ( );setFocusable ( );addKeyListrner ( );FrameaddImpladdImpl(Component comp,Object constraints, int index
18、) 添加指定的子 ComponentgetContentPane() 返回此窗體的contentPane 對象setLayoutsetLayout(LayoutManager manager)設(shè)置 LayoutManagersetJMenuBarsetJMenuBar(JMenuBar menubar) 設(shè)置此窗體的菜單欄setIconImage(Image image) setDefaultCloseOperationsetDefaultCloseOperation(int operation)設(shè)置用戶在此窗體上發(fā)起 close 時(shí)默認(rèn)執(zhí)行的操作設(shè)置此 frame 要顯示在最小化圖標(biāo)中的圖像
19、removeremove(Component comp) 從該容器中移除指定組件圖 4-1 Editor 繼承了 JFrame 類河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 8JComponetJTextComponentJMenuBarJOptionPane JToolBarJTreeJPanelJFileChooserJSplitpaneAbstratButtonJTabbedPaneJScrollPaneJButtonJMenuItemJMenuJTextArea河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 9圖 4-2 是本設(shè)計(jì)中用到的 JComponent 及其擴(kuò)展類的總括。ActionListene
20、ractionPerformedactionPerformed(ActionEvent e) 發(fā)生操作時(shí)調(diào)用Act_StartFlashactionPerformedactionPerformed(ActionEvent E_start)Act_StopFlashactionPerformedactionPerformed(ActionEvent E_stop)Act_TimeractionPerformedactionPerformed(ActionEvent E_time)Act_CopyactionPerformedactionPerformed(ActionEvent e_ji9)Ac
21、t_PasteactionPerformedactionPerformed(ActionEvent e_ji11)Act_CutactionPerformedactionPerformed(ActionEvent e_ji10)圖 4-3 本圖顯示復(fù)制,粘貼,剪貼,動(dòng)畫的顯示停止,啟動(dòng),暫停事件繼承ActionListener 類河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 10JFileChoosergetFileViewgetFileView() 返回當(dāng)前的文件視圖getIcongetIcon(File f) 返回此文件或文件類型的圖標(biāo),這取決于系統(tǒng)getNamegetName(File f) 返回
22、文件名getSelectedFilegetSelectedFile() 返回選中的文件setCurrentDirectorysetCurrentDirectory(File dir) 設(shè)置當(dāng)前目錄setDialogTitlesetDialogTitle(String dialogTitle) 設(shè)置顯示在 JFileChooser 窗口標(biāo)題欄的字符串FileChooserFilechooser();approveSelection();cancelSelection();圖 4-4 FileChoose 類繼承了 JFileChoose 類;此文件選擇器能夠打開和保存文件4.24.2 開發(fā)語言及
23、其開發(fā)環(huán)境開發(fā)語言及其開發(fā)環(huán)境4.2.1 開發(fā)語言概述Sun 公司在 Java 語言的白皮書中是這樣定義 Java 的:河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 11Java 是一個(gè)簡單的、面向?qū)ο蟮?、分布的、健壯的、安全的、與平臺(tái)無關(guān)的、可移植的、高性能的、多線程的,以及動(dòng)態(tài)的解釋型語言。Java 是一種簡單的語言。它用到的概念不多,而且多為程序員所熟悉。如果你是一名程序員,掌握 Java 對你來說是易如反掌的事。即使你沒有學(xué)過任何編程語言,學(xué)習(xí) Java 也要比學(xué)習(xí) C+要容易的多。由于 Java 最初是為控制電子產(chǎn)品設(shè)計(jì)的,因此它必須簡單明了。為了保證這種簡單性,Java 去掉了 C+中許多復(fù)
24、雜的、冗余的、有二義性的概念,例如操作符重載、多繼承、數(shù)據(jù)類型自動(dòng)轉(zhuǎn)換等。為了將程序員從復(fù)雜的內(nèi)存管理的負(fù)擔(dān)中解脫出來,同時(shí)也是為了減少錯(cuò)誤,Java 使用了自動(dòng)內(nèi)存垃圾收集機(jī)制,程序員只要在需要的時(shí)候申請即可,不需要釋放,而由 Java 自己來收集、釋放內(nèi)存中的無用的塊。Java 是一種支持分布式操作的程序設(shè)計(jì)語言。使用 Java 提供的 URL 類,用戶可以象訪問本地文件一樣訪問網(wǎng)絡(luò)上的對象,使用非常方便。在客戶機(jī)/服務(wù)器的模式下,Java 還可以將運(yùn)算從服務(wù)器端分散到客戶端,提高系統(tǒng)的效率,避免了服務(wù)器的瓶頸制約。Java 的網(wǎng)絡(luò)類庫支持分布式的編程。Socket 類提供可靠的流式網(wǎng)絡(luò)的
25、連接,支持 TCP/IP 協(xié)議。通過編寫協(xié)議句柄,程序員還可以擴(kuò)充 Java 支持的協(xié)議集合。Java 提供非常有效的安全控制。由于 Java 應(yīng)用于網(wǎng)絡(luò)程序的開發(fā),因而安全性變的至關(guān)重要。因?yàn)?Java 小程序需要下載到客戶端解釋執(zhí)行,所以,如果沒有安全控制,就會(huì)給一些網(wǎng)絡(luò)黑客以可乘之機(jī),這對用戶來說是非常危險(xiǎn)的。所幸的是,Java 的安全機(jī)制可以有效的防止病毒程序的產(chǎn)生、下載程序?qū)Ρ镜匚募到y(tǒng)的破壞,以及網(wǎng)絡(luò)黑客竊取密碼和入侵。Java 是一種非常健壯的語言。因?yàn)樵?Java 中使用了以下手段:自動(dòng)內(nèi)存垃圾收集機(jī)制。Java 自動(dòng)收集無用的內(nèi)存單元,進(jìn)而防止了由于內(nèi)存泄漏導(dǎo)致的動(dòng)態(tài)內(nèi)存分配
26、問題。完善的異常處理機(jī)制,既簡化了錯(cuò)誤處理任務(wù)和恢復(fù),也增加了程序的可讀性。Java 具有非常好的平臺(tái)無關(guān)性和可移植性。因?yàn)?Java 最初是為對電子產(chǎn)河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 12品編程而設(shè)計(jì)的,所以它具有完美的平臺(tái)無關(guān)性。它使用一種與平臺(tái)無關(guān)的代碼字節(jié)碼,而不是通常的特定機(jī)器上的機(jī)器碼,由平臺(tái)上的 Java 虛擬機(jī)中的 Java 解釋器解釋執(zhí)行。Java 虛擬機(jī)是免費(fèi)的,在許多平臺(tái)上都有。Java 提供了良好的可移植性。使用 Java 作為編程語言,只要進(jìn)行一次程序開發(fā)工作,所開發(fā)的程序不需要經(jīng)過任何改動(dòng),便能在各種平臺(tái)上運(yùn)行。Java 使用兩種方法使 Java 的應(yīng)用程序不依賴
27、與具體的系統(tǒng):采用基于國際標(biāo)準(zhǔn)的數(shù)據(jù)類型。Java 的原始數(shù)據(jù)類型在任何機(jī)器上都是一樣的,例如整型總是 32 位,長整型總是 64 位等。Java 是一種高性能的語言。 “魚與熊掌不可兼得” ,通常,健壯性、安全性、平臺(tái)無關(guān)性、可移植性等方面的提高總是要以犧牲性能為代價(jià)的。Java也不例外,Java 的內(nèi)存管理增加了運(yùn)行時(shí)系統(tǒng)的復(fù)雜性,因?yàn)?Java 運(yùn)行時(shí)系統(tǒng)必須內(nèi)嵌一個(gè)內(nèi)存管理模塊;同樣,Java 程序的解釋執(zhí)行的效率也要低于直接執(zhí)行編譯后的源碼的效率。但是 Java 采用了一些很好的措施來彌補(bǔ)這些性能上的差距:生成高效的字節(jié)碼。Java 字節(jié)碼的設(shè)計(jì)充分考慮了性能的因素,字節(jié)碼的格式簡單
28、,解釋器可以生成高效的機(jī)器碼。提供了即時(shí)編譯和嵌入 C 代碼的可選措施。即時(shí)編譯是指在運(yùn)行時(shí)把字節(jié)碼編譯成機(jī)器碼。4.2.2 Java 開發(fā)環(huán)境JDK 的介紹在 Sun 公司推出 Java 語言的同時(shí),也推出了 Java 的一系列開發(fā)工具,如JDK(Java Developers Kit) 。JDK 是可以從網(wǎng)上免費(fèi)下載的 Java 開發(fā)工具集。隨后,其它一些著名的公司也相繼推出了自己的 Java 開發(fā)工具,例如Microsoft 公司的 Visual J+,Borland 公司的 JBuilder,IBM 公司的VisualAge for Java,Synmentac 的 Caf 等。本節(jié)中
29、將簡單的介紹一下 Sun公司的 JDK;至于 Microsoft 公司的 Visual J+,將是本書其它章節(jié)重點(diǎn)介紹的內(nèi)容。河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 13JDK 是 Sun 公司推出的 Java 開發(fā)工具集,由于 Sun 公司是 Java 語言的創(chuàng)始者和 Java 規(guī)范的制定者,所以 JDK 自然是最權(quán)威的 Java 開發(fā)工具。您寫的Java 程序是否符合 Java 語言規(guī)范的要求,用 JDK 提供的 Java 編譯器一試便知。市場上其它公司的 Java 開發(fā)工具有的在某些地方并不完全遵從 Java 語言規(guī)范,例如 Microsoft 公司的 Visual J+,但是 JDK 卻絕
30、對和 Java 語言規(guī)范保持一致,而且每當(dāng)有新的 Java 語言規(guī)范推出時(shí),就會(huì)有相應(yīng)的 JDK 同時(shí)推出。當(dāng)前 JDK 已經(jīng)推出了其最新版本JDK1.64.34.3 環(huán)境變量的設(shè)置環(huán)境變量的設(shè)置4.3.1.環(huán)境變量的作用 JAVA 程序能夠順利編譯需要兩個(gè)環(huán)境變量,一個(gè)是 PATH(path) ,一個(gè)是 CLASSPATH(classpath) 。那么這兩個(gè)環(huán)境變量代表什么呢?或者說究竟在 JAVA 程序編譯中有什么作用呢?這就要涉及到 WINDOWS 的基本知識(shí)了。在WINDOWS 環(huán)境中,每一條能用的指令都保存在硬盤的“某個(gè)角落” ,比如說指令 NOTEPAD(WINDOWS 的記事本指
31、令,在 C:WINNT 目錄下) ,那么在 DOS 命令提示符下直接輸入 NOTEPAD 就可以打開記事本了。但是一旦我們把 C:WINNT目錄下的 NOTEPAD.EXE 這個(gè)可執(zhí)行文件移開(比如說我們現(xiàn)在把它“剪切”到 D 盤根目錄下)我們再在 DOS 提示符下直接輸入 NOTEPAD 時(shí)就無法再打開記事本了,但是我們在 DOS 下改變路徑輸入 D:NOTEPAD(或者先輸入 cd D: 在輸入 NOTEPAD 也行)就可以打開記事本了。這就是說在我們直接輸入 NOTEPAD的時(shí)候,其實(shí)其默認(rèn)路徑就是 C:WINN。假設(shè)我們要運(yùn)行一個(gè) JAVA 程序(hello.java)就要先把它的 c
32、lass 文件移動(dòng)到 JAVA 里的 bin 目錄下 然后打開 DOS,把路徑改到 JAVA 的 BIN 目錄下 執(zhí)行 java hello.class,一次無所謂 但是每次都要這樣去做未免太麻煩。還好 WINDOWS 提供了一個(gè) PATH 環(huán)境變量,他的作用就是現(xiàn)在這個(gè)變量的值路徑中去找,如果找到了要運(yùn)行的 EXE 就河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 14運(yùn)行,否則失敗。如果我們把 JAVA 里的 bin 目錄這個(gè)路徑賦給 path 那么下次我在運(yùn)行 java 這個(gè)命令的時(shí)候,即便是直接輸入 DOS 也能夠在 path 變量中找到 JAVA 的 bin 目錄下的 java 指令了。 “假設(shè)
33、我們要運(yùn)行一個(gè) JAVA 程序(hello.java)就要先把它的 class文件移動(dòng)到 JAVA 里的 bin 目錄下” ,為什么要這樣做呢?因?yàn)槲覀冊谟玫絡(luò)ava hello.class 這條指令的時(shí)候,DOS 不知道 hello.class 這個(gè)文件在哪里,他就先到當(dāng)前目錄中去找,如果找到就運(yùn)行,否則失敗。當(dāng)然,如果說hello.java 在 D 盤根目錄下,你也可以用 java D:hello.class 這條指令來運(yùn)行,但是每次這樣做也確實(shí)夠麻煩。WINDOWS 就提供了這樣一個(gè)環(huán)境變量classpath,如果沒有就應(yīng)該新建一個(gè)。我們把 D:這個(gè)路徑賦值給classpath,那么下次
34、在運(yùn)行 java hello.java 的時(shí)候就先在當(dāng)前目錄中到,如果找到就運(yùn)行,如果找不到就在 classpath 的值路徑下去找,找到就運(yùn)行,找不到就失敗。以上闡述了 path 和 classpath 兩個(gè)環(huán)境變量的作用,如果設(shè)置好了。java 的編譯和運(yùn)行就基本上沒什么問題了。4.3.2 如何設(shè)置環(huán)境變量Windows 下 JAVA 環(huán)境變量的設(shè)置祥解:Windows 下 JAVA 用到的環(huán)境變量主要有 3 個(gè),JAVA_HOME、CLASSPATH、PATH。下面逐個(gè)分析。JAVA_HOME 指向的是 JDK 的安裝路徑,如 x:JDK_1.4.2,在這路徑下你應(yīng)該能夠找到 bin、l
35、ib 等目錄。值得一提的是,JDK 的安裝路徑可以選擇任意磁盤目錄,不過建議你放的目錄層次淺一點(diǎn),如果你放的目錄很深,比如x:XXXXXXxxxxxXXXXxxxxXXXXxxxxXXXXxxx設(shè)置方法如下:JAVA_HOME=x:JDK_1.4.2PATH 環(huán)境變量原來 Windows 里面就有,你只需修改一下,使他指向 JDK河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 15的 bin 目錄,這樣你在控制臺(tái)下面編譯、執(zhí)行程序時(shí)就不需要再鍵入一大串路徑了。設(shè)置方法是保留原來的 PATH 的內(nèi)容,并在其中加上%JAVA_HOME%bin (注,如果你對 DOS 批處理不了解,你可能不明白%引起來的內(nèi)容是
36、什么意思;其實(shí)這里是引用上一步設(shè)定好的環(huán)境變量 JAVA_HOME,你寫成 x:JDK_1.4.2也是可以的;你可以打開一個(gè)控制臺(tái)窗口,輸入 echo %JAVA_HOME%來看一下你的設(shè)置結(jié)果) :PATH=%JAVA_HOME%bin;%PATH%同樣,%PATH%是引用以前你設(shè)置的 PATH 環(huán)境變量,你照抄以前的值就行了。CLASSPATH 環(huán)境變量我放在最后面,是因?yàn)橐院竽愠霈F(xiàn)的莫名其妙的怪問題 80%以上都可能是由于 CLASSPATH 設(shè)置不對引起的,所以要加倍小心才行。CLASSPATH=.;%JAVA_HOME%libtools.jar。首先要注意的是最前面的.;,這個(gè)是告訴
37、 JDK,搜索 CLASS 時(shí)先查找當(dāng)前目錄的 CLASS 文件為什么這樣搞,這是由于 LINUX 的安全機(jī)制引起的,LINUX 用戶很明白,WINDOWS 用戶就很難理解(因?yàn)?WINDOWS 默認(rèn)的搜索順序是先搜索當(dāng)前目錄的,再搜索系統(tǒng)目錄的,再搜索 PATH 環(huán)境變量設(shè)定的)。為什么 CLASSPATH 后面指定了 tools.jar 這個(gè)具體文件?不指定行不行?這個(gè)是由 java 語言的 import 機(jī)制和 jar 機(jī)制決定的。具體的設(shè)定方法: win2kxp 用戶右鍵點(diǎn)擊我的電腦-屬性-高級(jí)-環(huán)境變量,修改下面系統(tǒng)變量那個(gè)框里的值就行了。win9x 用戶修改 autoexec.ba
38、t 文件,在其末尾加入: set JAVA_HOME=x:JDK_1.4.2set PATH=%JAVA_HOME%bin;%PATH%set CLASSPATH=.;%JAVA_HOME%libtools.jar河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 165 5 關(guān)鍵技術(shù)和源代碼的實(shí)現(xiàn)關(guān)鍵技術(shù)和源代碼的實(shí)現(xiàn)5.15.1 關(guān)鍵技術(shù)剖析關(guān)鍵技術(shù)剖析JFrame 類的 setJMenuBar 的方法為窗口添加菜單欄 JMenuBar,JMenuBar的 add 方法為菜單欄添加菜單 JMenu,JMenu 的 add 方法為菜單添加菜單項(xiàng)JMenuItem,它們之間的關(guān)系是樹形關(guān)系。需要為每個(gè)菜單項(xiàng)添
39、加事件處理器,當(dāng)單擊菜單項(xiàng)時(shí),觸發(fā)事件。JToolBar 為工具欄,可以在工具欄中添加按鈕或者標(biāo)簽。JButton 的setToolTipText 方法設(shè)置按鈕的提示信息,當(dāng)鼠標(biāo)停留在按鈕上若干時(shí)間后,會(huì)顯示提示信息。分隔窗格 JSplitPane 類用于分隔兩個(gè)組件,可以由用戶交互的調(diào)整組件的大小。根據(jù)分隔條的方向,把 JSplitPane 分成有兩種:VERTICAL_SPLIT 表示水平分隔條,HORIZONTAL_SPLIT 表示垂直分隔條。setDividerlocation 方法設(shè)置分隔條的坐標(biāo)。JTree 類實(shí)現(xiàn)樹結(jié)構(gòu),樹中有多個(gè)節(jié)點(diǎn),但是且只有一個(gè)根節(jié)點(diǎn)。通用的節(jié)點(diǎn)類型為 De
40、faultMutableTreeNode,它的 add 方法為節(jié)點(diǎn)添加子節(jié)點(diǎn)。JTextArea 文本域顯示文件內(nèi)容,將它放置在 JScrollPane 中,使其具備滾動(dòng)條。setCareColor 方法設(shè)置插入光標(biāo)的顏色;addCareListener 方法為文本域設(shè)置光標(biāo)事件處理器,當(dāng)光標(biāo)位置改變時(shí)觸發(fā)該類事件;getText 和setText 方法獲得和設(shè)置文本域的內(nèi)容;select 方法高亮顯示文本域中指定的文本;setCaretPositin 方法獲得光標(biāo)在文本域中的位置;getLineOfOffset方法獲得指定位置在文本域中的行號(hào);getLineStartOffset 方法獲取指
41、定行的第一個(gè)字符在文本域中的位置;getLineEndOffset 方法獲取指定行的最后一個(gè)字符在文本去中的位置。JTabbedPane 實(shí)現(xiàn)多頁面的管理,每個(gè)頁面有一個(gè)標(biāo)簽。addTab 方法添加頁面;addChangeListener 方法設(shè)置頁面切換事件處理器;setSelectedIndex方法設(shè)置選擇頁面編號(hào);getSelectendIndex 方法獲取被選擇的頁面的編號(hào);河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 17setTitleAt 方法設(shè)置指定頁面標(biāo)簽;getTitleAt 方法獲取指定頁面的標(biāo)簽。組件的 addKeyListener 方法為組件注冊鍵盤事件管理器,鍵盤事件管理器必
42、須實(shí)現(xiàn) KeyListener 接口,或者繼承 KeyAdapter,keyPressed 方法處理按鍵事件,參數(shù)類型為 keyEvent,KeyEvent 的 getKeyCode 方法可以獲得備按下的鍵的代碼;isControlDown 方法判斷 Ctrl 鍵是否被按下;isAltDown 方法判斷 Alt 鍵是否被按下。JFileChoose 文件選擇器能夠打開和保存文件,提交選擇時(shí)approveSelection 方法被調(diào)用,取消選擇時(shí) cancelSelection 方法被調(diào)用;getCurrentDirectory 方法獲得文件選擇器當(dāng)前目錄,getSelectedFile 方法獲
43、得文件選擇器選擇的文件。JOptionPane 用于彈出標(biāo)準(zhǔn)的對話框,類型有很多種。showConfirmDialog 方法彈出確認(rèn)信息對話框,要求用戶確認(rèn)或者取消;showMessageDialog 方法彈出提示信息提示框;showInputDialog 方法彈出輸入信息對話框,要求用戶輸入信息。在編譯和運(yùn)行 Java 程序時(shí),需要調(diào)用本地的 java 和 javac 命令,通過Runtime 的 exec 方法可以調(diào)用本地命令。5.25.2 源碼分析源碼分析(1) Editor 類/* * 一個(gè)簡單的文本編輯器,能夠編輯 html、java、cpp、txt 文件, * 并支持 java 的
44、編譯與運(yùn)行 */public class Editor extends JFrame /*菜單欄、菜單和菜單項(xiàng)*/JMenuBar menuBar = new JMenuBar();河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 18JMenu fileMenu = new JMenu(File);JMenu optionMenu = new JMenu(Option);JMenu advanceMenu = new JMenu(Advance);JMenu helpMenu = new JMenu(Help);JMenu editMenu = new JMenu(Edit);JMenuItem newM
45、enuItem = new JMenuItem(new);JMenuItem openMenuItem = new JMenuItem(Open);JMenuItem saveMenuItem = new JMenuItem(Save);JMenuItem exitMenuItem = new JMenuItem(exit);JMenuItem findMenuItem = new JMenuItem(Find);JMenuItem findNextMenuItem = new JMenuItem(Find Next);JMenuItem replaceMenuItem = new JMenu
46、Item(Replace);JMenuItem compileMenuItem = new JMenuItem(Compile);JMenuItem buildMenuItem = new JMenuItem(Build);JMenuItem stopFlashMenuItem = new JMenuItem(Stop Flash);JMenuItem startFlashMenuItem = new JMenuItem(Start Flash);JMenuItem helpMenuItem = new JMenuItem(Help);JMenuItem copyMenuItem = new
47、JMenuItem(Copy);JMenuItem cutMenuItem = new JMenuItem(Cut);JMenuItem pasteMenuItem = new JMenuItem(Paste);/*文件內(nèi)容的顯示*/用多個(gè)文本域存放多個(gè)文件內(nèi)容,文本域放在 JScrollPane 里/而 JScrollPane 放在 JTabbedPane 中,這就是一個(gè)多頁面的布局/多個(gè)文本域,每個(gè)文本域顯示一個(gè)文件的內(nèi)容JTextArea fileTextAreas = new JTextArea10;/編譯或者運(yùn)行時(shí)的控制臺(tái)信息河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 19JTextArea
48、 consoleTextArea = new JTextArea();JScrollPane fileScrollPanes = new JScrollPane10;JScrollPane consoleScrollPane;/多個(gè)文本域放在不同 tab 里JTabbedPane fileTabbedPane = new JTabbedPane();/*工具欄以及工具欄上的按鈕*/JToolBar toolBar = new JToolBar();JButton openButton = new JButton(new ImageIcon(loadImage(image/open.gif);J
49、Button newButton = new JButton(new ImageIcon(loadImage(image/new.gif);JButton saveButton = new JButton(new ImageIcon(loadImage(image/save.gif);JButton helpButton = new JButton(new ImageIcon(loadImage(image/help.gif);JButton exitButton = new JButton(new ImageIcon(loadImage(image/close.gif);JButton co
50、mpileButton = new JButton(new ImageIcon(loadImage(image/compile.gif);JButton buildButton = new JButton(new ImageIcon(loadImage(image/build.gif);JButton copyButton = new JButton(new ImageIcon(loadImage(image/copy.gif);JButton cutButton = new JButton(new ImageIcon(loadImage(image/cut.gif);JButton past
51、eButton = new JButton(new ImageIcon(loadImage(image/paste.gif);/該文本域顯示當(dāng)前光標(biāo)在當(dāng)前文本域中的行號(hào)JTextArea showLineNoTextArea = new JTextArea();/對話框窗體,程序中所有對話框都顯示在該窗體中JFrame dialogFrame = new JFrame();/*文件名以樹型結(jié)構(gòu)在左邊顯示*/JTree tree;DefaultMutableTreeNode root;DefaultMutableTreeNode nodes = new DefaultMutableTreeNod
52、e10;/*組件之間的分隔欄*/河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 20JSplitPane leftRightSplitPane;JSplitPane lineNoConsoleSplitPane;JSplitPane treeFlashSplitPane;JSplitPane tabbedLineNoSplitPane;/*文件選擇、存儲(chǔ)相關(guān)*/文件過濾器Filter fileFilter = new Filter();/文件選擇器FileChooser fileChooser = new FileChooser();/ 文件讀寫控制,0 表示文件選擇器讀文件,1 文件選擇器標(biāo)示寫文件in
53、t fileChooser_control = 0;FileWriter fileWriter;/ tabbedPane 中 tab 頁的當(dāng)前數(shù)量int tb = 1;int find_control = 0;/文本域的控制器,指向當(dāng)前操作的文本域int textAreas_control = 0;/當(dāng)前文本域中的文本String currentTextInTextArea;/標(biāo)志文件是否為新建的,如果是新建的文件,為 trueboolean newFileFlags = new boolean10;/存放打開文件所在的目錄String directory = new String10;/*查
54、找替換相關(guān)*/正在查找的字符串及其長度String findWord;河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 21int fingWordLength;/保存正在查找的字符串在文本域中的文本的位置int findIndex;/被替換的文本的長度int replaceLength = 0;/*用于顯示 Flash 的控制器*/JLabel flashLabel = new JLabel(new ImageIcon(loadImage(image/Juggler0.gif);Timer timer = new Timer(100, new Act_timer();int timerControl =
55、0;/*幫助相關(guān)*/Font font = new Font(Courier, Font.TRUETYPE_FONT, 14);JTextArea helpTextArea = new JTextArea();JFrame helpFrame = new JFrame(Help);/構(gòu)造函數(shù)public Editor() super(文本編輯器);/為窗體添加鍵盤事件處理器/下面這一行非常重要,表示窗體能夠接受焦點(diǎn)。/如果沒有這一句,按鍵盤會(huì)無效。this.setFocusable(true);this.addKeyListener(new MyKeyListener();/為窗體添加窗口事件
56、處理器this.addWindowListener(new WindowListener();/初始化init();setLocation(200, 200);河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 22setVisible(true);pack();/初始時(shí)啟動(dòng)動(dòng)畫timer.start();該類是編輯器的主類。init 方法初始化編輯器上的所有控件。首先初始化 10 個(gè)文本域,表示該編輯器能同時(shí)編輯 10 個(gè)文件,并構(gòu)建 10 個(gè)默認(rèn)的樹節(jié)點(diǎn)DefaultMutableTreeNode 對象。初始化界面左邊的 JTree,設(shè)置它的根節(jié)點(diǎn)為“正在編輯的文件” ,使用 DefaultMutable
57、TreeNode 的 add 方法為根節(jié)點(diǎn)添加一個(gè)子節(jié)點(diǎn),表示編輯器初始狀態(tài)時(shí)時(shí)新建一個(gè)文件。JTree 的 setEditable方法設(shè)置樹不可編輯。 初始化控制臺(tái)的文本域 consoleTextArea,用于輸出編譯和運(yùn)行 Java 的信息。將控制臺(tái)文本域放置在一個(gè) JScrollPane 內(nèi),使得他具有滾動(dòng)條。 初始化顯示當(dāng)前光標(biāo)所在行數(shù)的文本域 showLineNoTextArea,當(dāng)用戶移動(dòng)編輯器的光標(biāo)時(shí),在該文本域中顯示光標(biāo)行數(shù)會(huì)跟著發(fā)生變化。通過setEnabled 方法使得它不可編輯。 初始化菜單,包括如下幾個(gè)菜單:“File”,“Option”,“Advance”,“Help
58、”,“Edit” 。每個(gè)菜單下都設(shè)置多個(gè)菜單項(xiàng)。 初始化工具欄,包括如下幾個(gè)工具項(xiàng):“New”,“Open”,“Save”,“Exit”,“Help”,“Complie”,“Build”,“Copy”,“Cut”,“Paste” 。通過 JButton 的 setToolTipText 方法為工具項(xiàng)設(shè)置提示信息,當(dāng)用戶鼠標(biāo)停留在按鈕上時(shí),顯示提示信息。將各大組件用 JSplitPane 組織起來,使得組件之間的大小可以任意的調(diào)節(jié)。最后把這些組件都放在窗口中。initHelp 方法初始化幫助信息。以表格的形式顯示編輯器的快捷鍵信息,河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 23使用了 JTable 類
59、實(shí)現(xiàn)表格,表格的列名是一個(gè)字符串?dāng)?shù)組,表格的數(shù)據(jù)是一個(gè)二維數(shù)組。helpTextArea 文本域顯示使用編輯器全部功能需要做的配置。exitEdior 方法退出編輯器。退出前通過 JOptionPane 的showXonfirmDialog 方法彈出“確認(rèn)退出”的對話框,當(dāng)用戶選擇JOptionPane.YES_OPTION 時(shí)才真正退出。loadImage 方法加載圖片。根據(jù)圖片名,使用 Class 的 getResource 方法獲得圖片的 URL,通過 getContent 方法打開 URL,獲得圖片的輸入流,通過組件的 createImage 方法,把輸入流構(gòu)造成一個(gè) Image 對象
60、。(2) MyKeyListener 類* 鍵盤事件處理器 */public class MyKeyListener extends KeyAdapter / 覆蓋父類的 keyPressed 方法,處理鍵被按下時(shí)的事件。public void keyPressed(KeyEvent e) / 按 F12 打開文件if (e.getKeyCode() = KeyEvent.VK_F12)(new Act_OpenFile().actionPerformed(null);/ 按 Ctrl 加 S 鍵保存文件else if (e.isControlDown() & e.getKeyCode() =
61、 KeyEvent.VK_S)(new Act_SaveFile().actionPerformed(null);/ 按 Alt 鍵查找else if (e.isAltDown()(new Act_Find().actionPerformed(null);河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 24/ 按 F3 查找下一個(gè)else if (e.getKeyCode() = KeyEvent.VK_F3)(new Act_FindNext().actionPerformed(null);/ 按 F4 替換else if (e.getKeyCode() = KeyEvent.VK_F4)(new Ac
62、t_Replace().actionPerformed(null);/ 按 Ctrl 加 N 新建文件else if (e.isControlDown() & e.getKeyCode() = KeyEvent.VK_N)(new Act_NewFile().actionPerformed(null);/ 按 Ctrl 加 E 退出編輯器else if (e.isControlDown() & e.getKeyCode() = KeyEvent.VK_E)(new Act_ExitEditor().actionPerformed(null);/ 按 F5 運(yùn)行 Java 程序else if (
63、e.getKeyCode() = KeyEvent.VK_F5)(new Act_Build().actionPerformed(null);/ 按 F9 編譯 Java 源代碼else if (e.getKeyCode() = KeyEvent.VK_F9)(new Act_Compile().actionPerformed(null);/ 按 Ctrl 加 H 顯示幫助else if (e.isControlDown() & e.getKeyCode() = KeyEvent.VK_H)河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 25(new Act_Help().actionPerformed(
64、null);/*該類用于處理鍵盤事件,繼承 KeyAdpter。覆蓋了 KeyAdapter 的 keyPressed 方法,處理鍵盤被按下的事件,參數(shù)為KeyEvent 類型。通過 KeyEvent 的 getKeyCode 方法獲得被按下鍵盤的碼,isControlDown 方法判斷 Ctrl 鍵是否被按下,isAltDown 方法判斷 Alt 鍵是否被按下。根據(jù)不同的按鍵組合,調(diào)用不同的方法去處理。(3) FileChoose 類/* * 文件選擇器 */class FileChooser extends JFileChooser public FileChooser() /文件選擇器默
65、認(rèn)位置為當(dāng)前文件夾super(./);/* * 提交選擇 */public void approveSelection() String filename = null;/fileChooser_control = 0 表示現(xiàn)在是打開文件,需要讀if (fileChooser_control = 0) 河南理工大學(xué)畢業(yè)設(shè)計(jì)(論文)說明書 26/打開文件時(shí),在左邊的樹中添加一個(gè)節(jié)點(diǎn)root.add(nodestb);remove(tree);tree = new JTree(root);tree.setBackground(new Color(70, 80, 91);treeFlashSplit
66、Pane.setRightComponent(tree);treeFlashSplitPane.setDividerLocation(120);/ 新建一個(gè) tab 頁,用于裝新打開的文件fileTabbedPane.addTab(File + (tb + 1), fileScrollPanestb);fileTabbedPane.setSelectedIndex(tb);/將當(dāng)前文本域設(shè)置到新打開的文件上textAreas_control = tb;tb+;/獲取待打開的文件名filename = fileChooser.getSelectedFile().getName();/獲取待打開的文件所在的目錄,將目錄保存至數(shù)組,這樣在保存文件的時(shí)候,能夠?qū)⑽募4娴侥夸浿衐irectorytextAreas_control = fileChooser.getCurrentDirectory().toString();fileTextAreastextAreas_control.setText(null);try /將文件內(nèi)容顯示到文本域中String str;BufferedReade
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 水電站輔機(jī)設(shè)備及控制培訓(xùn)ppt課件
- 說數(shù)ppt粵教版課件
- 直腸癌術(shù)后放療-課件
- 倍的認(rèn)識(shí)課件
- 空氣流量傳感器
- 電子商務(wù)法第四章電子商務(wù)法基礎(chǔ)理論
- 部編版教材《快樂過新年》課件
- 人感染豬流感疫情概況及預(yù)防控制技術(shù)要點(diǎn)
- 金版-魯教地理-必修1-第二單元-單元活動(dòng)分析判斷氣候類型匯總ppt課件
- 護(hù)士護(hù)理醫(yī)療醫(yī)院PPT模板課件
- 精密和超精密加工技術(shù)第10章精密和超精密加工的外部支撐環(huán)境ppt課件
- 手繪pop廣告的制作課件
- 自私基因讀書筆記課件
- 腎移植術(shù)后高血壓護(hù)理課件
- 桂枝香金陵懷優(yōu)質(zhì)ppt課件統(tǒng)編版