版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> XXXX學院</b></p><p><b> XXXX畢業(yè)論文</b></p><p><b> Java程序設(shè)計</b></p><p><b> Java程序設(shè)計</b></p><p> 【摘要】 簡歷自動生成
2、程序是一個使求職者方便制作簡歷的程序。它可以使求職者制作簡歷的時間大大縮短,使求職者在制作簡歷這個環(huán)節(jié)變得方便、快捷,增加了求職者尋找工作的時間,提高了找工作的效率。本次設(shè)計使用Java語言進行編寫。這是一種面向?qū)ο蟮恼Z言,通過理解一些重要的概念就能編寫出各種功能的代碼。Java語言具有簡單、面向?qū)ο?、分布式、安全、可移植性、多態(tài)等特點。本次設(shè)計的程序,最后將通過Java語言中的Swing工具,將所做內(nèi)容通過界面的方式進行呈現(xiàn)。<
3、/p><p> 【關(guān)鍵字】Java Swing 面向?qū)ο?JDk 簡歷</p><p><b> 目錄</b></p><p><b> 引言- 1 -</b></p><p> 1、開發(fā)環(huán)境概述- 1 -</p><p> 1.1 開發(fā)平臺及開發(fā)工具概述
4、- 1 -</p><p> 1.1.1 Java介紹- 1 -</p><p> 1.1.2 Java的特點- 2 -</p><p> 1.1.3 Java平臺介紹- 3 -</p><p> 1.1.4類- 3 -</p><p> 1.1.5方法- 4 -</p><p&
5、gt; 1.2 Swing- 4 -</p><p> 1.2.1 Swing介紹- 4 -</p><p> 1.2.2 Swing的原理- 4 -</p><p> 1.2.3 Swing與AWT的關(guān)系- 5 -</p><p> 1.2.4 創(chuàng)建圖形界面步驟- 5 -</p><p> 1.
6、3需求概述- 6 -</p><p> 1.4簡歷生成程序的功能要求- 6 -</p><p> 1.5運行環(huán)境- 6 -</p><p> 2、環(huán)境搭建- 6 -</p><p> 2.1安裝JDK- 6 -</p><p> 2.2設(shè)置環(huán)境變量- 7 -</p><p>
7、; 2.3HelloWorld程序- 11 -</p><p> 2.3.1編寫源程序- 11 -</p><p> 2.3.2編譯程序代碼并運行- 11 -</p><p> 3、設(shè)計規(guī)劃- 13 -</p><p> 3.1程序說明- 13 -</p><p> 3.2總體設(shè)計說明- 13
8、-</p><p> 4、詳細設(shè)計- 14 -</p><p> 4.1界面設(shè)計- 14 -</p><p> 4.2信息輸入模塊- 15 -</p><p> 4.3信息預(yù)覽模塊- 18 -</p><p> 4.4信息操作模塊- 19 -</p><p> 5、結(jié)論-
9、 22 -</p><p> 6、致謝- 23 -</p><p> 7、參考文獻- 24 -</p><p><b> 引言</b></p><p> 隨著計算機技術(shù)的飛躍發(fā)展,計算機軟件的使用已經(jīng)融入到社會的各行各業(yè)中,使以前復(fù)雜、繁重的工作變得簡單、輕松、快捷。Java是一門很優(yōu)秀的編程語言,它已經(jīng)成為
10、網(wǎng)路時代最重要的編程語言之一。目前,隨著人口的不斷增長,求職者的數(shù)量也在不斷的增加。而求職者在找工作前,最重要的準備工作之一就是準備簡歷。在簡歷生成程序出現(xiàn)之前,求職者往往要花很多時間去設(shè)計簡歷,大大縮短了尋找工作的時間。計算機軟件有著簡單、快捷的特點,它可以使人們的工作效率大大的提高,因此我利用Java語言編寫了一個簡歷生成程序來幫助求職者提高他們尋找工作的效率。</p><p><b> 1、開發(fā)
11、環(huán)境概述</b></p><p> 1.1 開發(fā)平臺及開發(fā)工具概述</p><p><b> 開發(fā)平臺:J2SE</b></p><p> 開發(fā)工具:Java Version 6 Update 11、Swing</p><p> 1.1.1 Java介紹</p><p> J
12、ava是1995年6月有Sun公司引進到這個世界的革命性的編程語言,它被美國的著名雜志《PC Magazine》評為1995年十大優(yōu)秀科技產(chǎn)品。之所以稱Java為革命性編程語言,是因為傳統(tǒng)的軟件往往與具體的實現(xiàn)環(huán)境有關(guān),一旦環(huán)境有所變化就需要對軟件進行一番改動,耗時費力,而Java編寫的軟件能在執(zhí)行碼上兼容。這樣,只要計算機提供了Java解釋器,Java編寫的軟件就能在其上運行。</p><p> Java的出
13、現(xiàn)是源于對獨立于平臺語言的重要,希望這種編程語言能編寫出嵌入各種家用電器等設(shè)備的芯片上、且易于維護的程序。但是,人們發(fā)現(xiàn)當時的編程語言,比如C、C++等都有一個共同的缺點,那就是針對CPU芯片進行編譯。這樣,一旦電氣設(shè)備更換了芯片就不能保證程序正確運行,就可能需要修改程序并針對新的芯片重新進行編譯。1990年Sun公司成立了有James Gosling領(lǐng)導(dǎo)的開發(fā)小組,開始致力于開發(fā)一種可移植的、跨平臺的編程語言,該編程語言能生成正確運行
14、與各種操作系統(tǒng)、各種CPU芯片上的代碼。他們的精心專研和努力促成了Java的誕生。Java的快速發(fā)展得利于Internet和Web的出現(xiàn),Internet上各種不同的計算機,它們可能使用完全不同的操作系統(tǒng)和CPU芯片,但仍希望運行相同的程序,Java的出現(xiàn)標志著真正的分布式系統(tǒng)的到來。</p><p> 1.1.2 Java的特點</p><p> 1、Java語言是簡單的。Java語
15、言的語法與C語言和C++語言很接近,使得大多數(shù)程序員很容易學習和使用Java。另一方面,Java丟棄了C++ 中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動的強制類型轉(zhuǎn)換。特別地,Java語言不使用指針,并提供了自動的廢料收集,使得程序員不必為內(nèi)存管理而擔憂。</p><p> 2、Java語言是一個面向?qū)ο蟮?。Java語言提供類、接口和繼承等原語,為了簡單起見,只支持類之間的單繼承,
16、但支持接口之間的多繼承,并支持類與接口之間的實現(xiàn)機制(關(guān)鍵字為implements)。Java語言全面支持動態(tài)綁定,而C++ 語言只對虛函數(shù)使用動態(tài)綁定??傊琂ava語言是一個純的面向?qū)ο蟪绦蛟O(shè)計語言。</p><p> 3、Java語言是分布式的。Java語言支持Internet應(yīng)用的開發(fā),在基本的Java應(yīng)用編程接口中有一個網(wǎng)絡(luò)應(yīng)用編程接口(java.net),它提供了用于網(wǎng)絡(luò)應(yīng)用編程的類庫,包括URL、
17、URLConnection、Socket、 ServerSocket等。Java的RMI(遠程方法激活)機制也是開發(fā)分布式應(yīng)用的重要手段。</p><p> 4、Java語言是健壯的。Java的強類型機制、異常處理、廢料的自動收集等是Java程序健壯性的重要保證。對指針的丟棄是Java的明智選擇。Java的安全檢查機制使得Java更具健壯性。</p><p> 5、Java語言是安全的
18、。Java通常被用在網(wǎng)絡(luò)環(huán)境中,為此,Java提供了一個安全機制以防惡意代碼的攻擊。除了Java語言具有的許多安全特性以外,Java對通過網(wǎng)絡(luò)下載的類具有一個安全防范機制(類ClassLoader),如分配不同的名字空間以防替代本地的同名類、字節(jié)代碼檢查,并提供安全管理機制(類SecurityManager)讓Java應(yīng)用設(shè)置安全哨兵。 </p><p> 6、Java語言是體系結(jié)構(gòu)中立的。Java程序(后綴為
19、java的文件)在Java平臺上被編譯為體系結(jié)構(gòu)中立的字節(jié)碼格式(后綴為class的文件), 然后可以在實現(xiàn)這個Java平臺的任何系統(tǒng)中運行。這種途徑適合于異構(gòu)的網(wǎng)絡(luò)環(huán)境和軟件的分發(fā)。 </p><p> 7、Java語言是可移植的。這種可移植性來源于體系結(jié)構(gòu)中立性,另外,Java還嚴格規(guī)定了各個基本數(shù)據(jù)類型的長度。Java系統(tǒng)本身也具有很強的可移植性,Java編譯器是用Java實現(xiàn)的,Java的運行環(huán)境是用A
20、NSI C實現(xiàn)的。</p><p> 8、Java語言是解釋型的。如前所述,Java程序在Java平臺上被編譯為字節(jié)碼格式, 然后可以在實現(xiàn)這個Java平臺的任何系統(tǒng)中運行。在運行時,Java平臺中的Java解釋器對這些字節(jié)碼進行解釋執(zhí)行,執(zhí)行過程中需要的類在聯(lián)接階段被載入到運行環(huán)境中。</p><p> 9、Java是高性能的。與那些解釋型的高級腳本語言相比,Java的確是高性能的。
21、事實上,Java的運行速度隨著JIT(Just-In-Time)編譯器技術(shù)的發(fā)展越來越接近于C++。 </p><p> 10、Java語言是多線程的。在Java語言中,線程是一種特殊的對象,它必須由Thread類或其子(孫)類來創(chuàng)建。通常有兩種方法來創(chuàng)建線程:其一,使用型構(gòu)為Thread(Runnable) 的構(gòu)造子將一個實現(xiàn)了Runnable接口的對象包裝成一個線程,其二,從Thread類派生出子類并重寫r
22、un方法,使用該子類創(chuàng)建的對象即為線程。值得注意的是Thread類已經(jīng)實現(xiàn)了Runnable接口,因此,任何一個線程均有它的run方法,而run方法中包含了線程要運行的代碼。線程的活動由一組方法來控制。 Java語言支持多個線程的同時執(zhí)行,并提供多線程之間的同步機制(關(guān)鍵字為synchronized)。</p><p> 11、Java語言是動態(tài)的。Java語言的設(shè)計目標之一是適應(yīng)于動態(tài)變化的環(huán)境。Java程序
23、需要的類能夠動態(tài)地被載入到運行環(huán)境,也可以通過網(wǎng)絡(luò)來載入所需要的類。這也有利于軟件的升級。另外,Java中的類有一個運行時刻的表示,能進行運行時刻的類型檢查。</p><p> 1.1.3 Java平臺介紹</p><p> Sun公司要實現(xiàn)“一次寫成,處處運行”(write once,run anywhere)的目標,就必須提供相應(yīng)的Java運行平臺,目前Java運行平臺主要分為下列
24、3個版本。</p><p> J2SE:稱為Java標準版或Java標準平臺。J2SE提供了標準的SDK開發(fā)平臺(以前稱為JDK開發(fā)平臺)。利用該平臺可以開發(fā)Java桌面應(yīng)用程序和低端的服務(wù)器應(yīng)用程序,也可以開發(fā)Java Applet程序。</p><p> J2EE:稱為Java企業(yè)版或Java企業(yè)平臺。使用J2EE可以構(gòu)建企業(yè)級的服務(wù)器應(yīng)用程序,j2EE平臺包含了J2SE平臺,并增
25、加了附加類庫,以便支持目錄管理、交易管理和企業(yè)級消息處理等功能。</p><p> J2ME:稱為Java微型版或Java小型平臺。J2ME是一種很小的Java運行環(huán)境,用于嵌入式的消費產(chǎn)品中,如移動電話、掌上電腦或其它無線設(shè)備等。</p><p><b> 1.1.4類</b></p><p> 類是組成Java程序的基本要素。類封裝了
26、一類對象的狀態(tài)和方法。類是用來定義對象的模板。類的實現(xiàn)包括兩部分:類聲明和類體?;靖袷綖椋?lt;/p><p><b> class 類名</b></p><p><b> { 類的內(nèi)容</b></p><p><b> }</b></p><p> class是關(guān)鍵子
27、,用來定義類?!癱lass 類名”是類的聲明部分,類名必須是合法的Java標識符。兩個大括號以及之間的內(nèi)容是類體。</p><p> 編寫類的目的是為了描述一類事物共有的屬性和功能,描述過程由類體來實現(xiàn)。類體的內(nèi)容有兩部分構(gòu)成:一部分是變量的定義,用來刻畫屬性;另一部分是方法的定義,用來刻畫功能。</p><p><b> 1.1.5方法</b></p&g
28、t;<p> 一個類的類體由兩部分組成:變量的定義和方法的定義。方法的定義包括兩部分:方法聲明和方法體。一般格式為:</p><p><b> 方法聲明部分</b></p><p><b> { 方法體的內(nèi)容</b></p><p><b> }</b></p>
29、<p><b> 1.2 Swing</b></p><p> 1.2.1 Swing介紹</p><p> Swing是一個用于開發(fā)Java應(yīng)用程序用戶界面的開發(fā)工具包。它以抽象窗口工具包(AWT)為基礎(chǔ)使跨平臺應(yīng)用程序可以使用任何可插拔的外觀風格。Swing開發(fā)人員只用很少的代碼就可以利用Swing豐富、靈活的功能和模塊化組件來創(chuàng)建優(yōu)雅的用戶界面。
30、</p><p> Swing組件中大部分組件是輕量組件,沒有同位體。Swing組件的輕量組件在設(shè)計上和AWT完全不同。輕量組件把與顯示組件有關(guān)的許多工作和處理組件事件的工作交給相應(yīng)的UI代表來完成,這些UI代表是用Java語言編寫的類,這些類被增加到Java的運行環(huán)境中,因此,組件的外觀不依賴平臺,不僅在不同平臺上的外觀是相同的,而且較重量組件而言有更高的性能。如果Java編程環(huán)境或運行環(huán)境低于1.2版本,就
31、不能使用Swing組件或運行含有Swing組件的程序。</p><p> 1.2.2 Swing的原理</p><p> Swing組件類的設(shè)計原理是建立在稱為模型-視圖-控制器(Model-View-Controller)結(jié)構(gòu)基礎(chǔ)上,也稱為MVC。MVC的設(shè)計思想并非源于Java,MVC是Trygve Reenskaug教授于1978年最早開發(fā)的一個設(shè)計模板或基本結(jié)構(gòu),其目的是以會話
32、形式提供方便的GUI支持。MVC設(shè)計模式首先出現(xiàn)在Smalltalk編程語言中,MVC是一種先進的組件設(shè)計模式,Java在MVC的基礎(chǔ)上設(shè)計了Swing組件。</p><p> MVC是一種通過3個不同部分構(gòu)造一個組件的理想辦法:</p><p> 模型(model)用于存儲定義該組件的數(shù)據(jù)。</p><p> 視圖(view)用模型中的數(shù)據(jù)生成該組件的可視化
33、表示。</p><p> 控制器(controller)處理用戶對該組件的交互操作,對于用戶的操作做出響應(yīng)。</p><p> 從面向?qū)ο蟮慕嵌瓤?,MVC結(jié)構(gòu)可以使程序更具有對象化特性,也更容易維護。因為視圖和控制器之間有依存關(guān)系,Swing組件的開發(fā)者們將MVC設(shè)計思想中的視圖和控制器合并成一個獨立整體,稱為Swing組件的UI代表(UI delegate),如圖1所示。</p
34、><p> 圖1 MVC結(jié)構(gòu)示意圖</p><p> 1.2.3 Swing與AWT的關(guān)系</p><p> Java的早期版本以來,抽象視窗工具包為用戶界面組件提供了平臺獨立的API。在AWT中,每個組件都由一個原生的等同組件生成和控制,這個原生組件是當前的圖形視窗系統(tǒng)決定的。與此相對,Swing組件經(jīng)常被描述為輕量級的,因為它們不需要操作系統(tǒng)本身所帶視窗工具包
35、的原生資源來生成。Swing API的大部分是AWT的補充擴展而不是直接的代替。Swing用來繪制輕量級組件的核心渲染功能是由Java2D提供的,這是AWT的一部分。然而,輕量級和重量級組件在同一個應(yīng)用中使用會導(dǎo)致Z-order不兼容。</p><p> 1.2.4 創(chuàng)建圖形界面步驟</p><p> ?。?)導(dǎo)入Swing包</p><p><b>
36、?。?)選擇界面風格</b></p><p><b> ?。?)設(shè)置頂層容器</b></p><p> ?。?)設(shè)置按鈕和標簽</p><p> (5)將組件放到容器上</p><p> ?。?)為組件增加邊框</p><p><b> (7)處理事件</b>
37、</p><p><b> (8)輔助技術(shù)支持</b></p><p><b> 1.3需求概述</b></p><p> 求職者在尋找工作之前,都會花費大量的時間用來建立簡歷,這樣縮短了尋找工作的時間,降低了找工作的效率。簡歷自動生成程序,可以幫助求職者花費少量的時間,就能建立一份完整的簡歷,提高他們找工作的效率。
38、</p><p> 1.4簡歷生成程序的功能要求</p><p><b> ?。?)信息輸入</b></p><p> 由求職者將信息輸入到程序中,這是本程序操作的第一步,也是后續(xù)步驟的基礎(chǔ)。本程序只有一個界面,可使求職者更直觀、更方便的操作。</p><p><b> (2)信息預(yù)覽</b>
39、</p><p> 將輸入的信息整合起來,顯示在預(yù)覽框內(nèi),使求職者查看輸入到本程序中的信息。</p><p><b> ?。?)信息保存</b></p><p> 將輸入到本程序中的信息,以txt格式保存到計算機上。</p><p><b> (4)重置信息</b></p>&l
40、t;p> 清除已輸入到本程序中的信息,使求職者可以從新輸入信息。</p><p><b> 1.5運行環(huán)境</b></p><p> 運行服務(wù)器:JDK1.5版本或更高</p><p> 操作系統(tǒng):windows系列,Linux系列或Unix系列</p><p> 硬件需求:VGA顯示器或液晶顯示器,內(nèi)存
41、最低為256MB,硬盤空間最少為20G,鍵盤及鼠標。</p><p><b> 2、環(huán)境搭建</b></p><p><b> 2.1安裝JDK</b></p><p> ?。?)打開“http//java.sun.com/”網(wǎng)頁,根據(jù)本地計算機的操作系統(tǒng),選擇并下載適合此系統(tǒng)的JDK版本。</p>&l
42、t;p> ?。?)找到安裝程序后,雙擊jdk-6-windows-i586.exe,運行安裝程序進行安裝。</p><p> ?。?)等程序初始化完成后,選擇接受許可證協(xié)議,繼續(xù)安裝。</p><p> ?。?)選擇要安裝的組件,點擊“下一步”按鈕繼續(xù)安裝,一般選擇默認組件直接進入下一步。</p><p> (5)等待程序安裝完成后,顯示安裝完成界面,至此J
43、DK安裝完成。</p><p><b> 2.2設(shè)置環(huán)境變量</b></p><p> ?。?)在桌面右鍵點擊“我的電腦”圖標,在出現(xiàn)的菜單中選擇“屬性”選項,出現(xiàn)的界面如圖2所示。</p><p><b> 圖2 系統(tǒng)屬性</b></p><p> (2)選擇“高級”選項,如圖3所示,并單擊
44、“環(huán)境變量”按鈕,彈出”環(huán)境變量”對話框,如圖3所示。</p><p><b> 圖3 “高級”界面</b></p><p> 圖4 “環(huán)境變量”對話框</p><p> (3)在“系統(tǒng)變量”對話框里找到變量名“Path”,并選出,再單擊“編輯”按鈕進入“編輯系統(tǒng)變量”對話框,如圖5所示。</p><p> 圖5
45、 “編輯系統(tǒng)變量”對話框</p><p> ?。?)在所有的變量值前面輸入“C:Program Files\Java\jdk1.5.0_08\bin:”,注意有分號,路徑根據(jù)情況進行設(shè)置。</p><p> ?。?)在“系統(tǒng)變量”對話框里點擊“新建”按鈕,彈出“新建系統(tǒng)變量”對話框,如圖6所示。</p><p> 圖6 “新建系統(tǒng)變量”對話框</p>
46、<p> ?。?)設(shè)置變量名為“classpath”,變量值為</p><p> “.;C:Program Files\Java\jdk1.5.0_08\lib\dt.jar;C:\Program Files\Java\jdk1.5.0_08\lib\tools.jar”,路徑根據(jù)情況進行設(shè)置,如圖7所示。</p><p><b> 圖7 填入新值</b&g
47、t;</p><p> 配置完成后,需要測試是否配置正確。下面給出了詳細的測試步驟,按照這個步驟操作可以很輕松地完成測試。</p><p> ?。?)單擊“開始”按鈕,在彈出的開始菜單中再單擊“運行”菜單項,將出“運行”對話框。在“運行”對話框里輸入“cmd”,并單擊“確定”按鈕,如圖8所示。</p><p> 圖8 “運行”對話框</p><
48、;p> ?。?)在命令提示符窗口里輸入“javac”和“java”,觀察是否出現(xiàn)javac或java的用法提示,如圖9所示。</p><p> 圖9 配置正確的環(huán)境變量信息</p><p> 2.3HelloWorld程序</p><p> 2.3.1編寫源程序</p><p> 打開文本文件編輯器,如Windows的記事本,也
49、可以使用更高級的編寫工具。如Eclipse、JBuilder、NetBeans等,這些工具具有更加強大的功能,但不推薦初學者使用,不利于初學者打下良好的編程基礎(chǔ)。首先,在記事本里添加如下代碼。</p><p><b> 例1,</b></p><p> //定義一個類名稱為HelloWorld</p><p> Public class
50、HellowWorld</p><p><b> {</b></p><p><b> //類的主入口函數(shù)</b></p><p> Public static void main (String args[])</p><p><b> {</b></p>
51、<p> //System.out.println為打印語句,用來顯示結(jié)果</p><p> System.out.println(“ 歡迎使用Java來編寫程序!”);</p><p><b> }</b></p><p><b> }</b></p><p> 在本程序中
52、,首先定義了一個類,類的名字為HelloWorld。在這個類里有一個main方法,這是Java程序的入口,只要能執(zhí)行的程序都有這個方法。System.out.println方法能執(zhí)行打印操作,還能打印其它類型的數(shù)據(jù)。</p><p> 在編寫后把這個文本文件保存為HelloWorld.Java,并注意大小寫問題。</p><p> 2.3.2編譯程序代碼并運行</p>&
53、lt;p> 編寫完Java程序的源代碼后就可以對該程序進行編譯,Java程序源代碼的編譯有如下幾個步驟。</p><p> 單擊“開始按鈕,在菜單中選擇“運行”菜單項,將出現(xiàn)“運行”對話框。在“運行”對話框里填寫“cmd”,并單擊“確定”按鈕。</p><p> 在命令提示符下進入源代碼文件的存放目錄。</p><p> 輸入命令“javac Hell
54、oWorld.java”,并按回車鍵,如圖10所示。</p><p> 圖10 編譯HelloWorld.java</p><p> 編譯成功后,在程序源代碼的目錄里會出現(xiàn)文件HelloWorld.class,這是Java編譯的字節(jié)碼文件,如圖11所示。</p><p> 圖11 生成的HelloWorld.class</p><p>
55、 在命令行提示符下使用命令運行程序,如圖12所示。</p><p> 圖12 程序HelloWorld的運行結(jié)果</p><p><b> 3、設(shè)計規(guī)劃</b></p><p><b> 3.1程序說明</b></p><p> 本程序所面對的使用對象為求職者,且較為適合求職者中的大學應(yīng)屆
56、畢業(yè)生使用。本程序只有一個操作和視圖統(tǒng)一的界面,可使使用者直觀的、清楚地知道他們在使用本程序時所要做的工作。本程序操作簡單,使用者能快速地完成簡歷,使他們在準備簡歷的時間上大大縮短,增加他們的求職效率。</p><p> 本程序只有一個源文件,名稱為A.java。源文件編譯后,會產(chǎn)生14個擴展名為.class的文件。</p><p><b> 3.2總體設(shè)計說明</b&
57、gt;</p><p> 本程序為了使使用者在使用時操作方便、直觀、快捷,只設(shè)計了一個操作界面。在這個界面上共分為3個模塊,信息輸入模塊、信息預(yù)覽模塊和信息操作模塊,如圖13所示。</p><p> 1.信息輸入模塊:輸入求職者的信息。</p><p> 2.信息預(yù)覽模塊:顯示所輸入的信息。</p><p> 3.信息操作模塊:分為3
58、個功能按鈕,預(yù)覽、重置、保存。</p><p> ?。?)預(yù)覽:將輸入的信息顯示在預(yù)覽框中。</p><p> (2)重置:將已輸入的信息清除。</p><p> ?。?)保存:將信息“另存為”。</p><p> 圖13 簡歷生成程序界面</p><p><b> 4、詳細設(shè)計</b>&l
59、t;/p><p><b> 4.1界面設(shè)計</b></p><p> 本程序只設(shè)計了一個操作界面,它是用Swing組件進行編寫的。Swing是在AWT的基礎(chǔ)上構(gòu)建的一套新的圖形界面系統(tǒng),它提供了AWT所能提供的所有功能,并且用純粹的Java代碼對AWT功能進行了大幅度的擴充。Swing是基于AWT的Java程序,其運行速度比AWT慢,但是其功能要比AWT強大的多,而且
60、在基于普通PC或者工作站的標準Java應(yīng)用中,硬件資源對應(yīng)用程序所造成的限制往往不是項目中的關(guān)鍵因素,所以我決定使用Swing編寫本程序,以犧牲比AWT慢的可以忽略不計的速度來實現(xiàn)應(yīng)用程序的功能。</p><p><b> 4.2信息輸入模塊</b></p><p> 信息輸入模塊的唯一功能就是對信息的輸入,使用者通過這個模塊將信息輸入到簡歷生成程序中。這個模塊由
61、一些標簽組件、文本框組件和單選框組件組成,如圖14所示。</p><p> 圖14 信息輸入界面</p><p> 由于本程序主要的使用對象是大學應(yīng)屆畢業(yè)生,所以在信息輸入模塊中所列出的項目都是一些基礎(chǔ)信息項目,可以滿足大部分的大學應(yīng)屆畢業(yè)生求職者的需要。</p><p> 在這個模塊的設(shè)計中,主要的技術(shù)有標簽框、文本框、單選框和多選框的建立和輸入到程序上的信
62、息的讀取,在下面的代碼將舉例說明。</p><p><b> 例2,文本框,</b></p><p> nameLabel = new JLabel("姓名 :");</p><p> //建立名為“姓名”的標簽</p><p> nameLabel.setBounds(30, 10, 50,
63、 25);</p><p> //標簽的位置和大小</p><p> name = new JTextField();</p><p><b> //建立文本框</b></p><p> name.setBounds(80, 10, 120, 20);</p><p> //文本框的位置
64、和大小</p><p> name.setBorder(BorderFactory.createLineBorder(Color.PINK));</p><p> name.addKeyListener(new KeyListener() {</p><p> //創(chuàng)建文本框的事件</p><p> public void keyPr
65、essed(KeyEvent e) {</p><p><b> }</b></p><p> //鍵盤按下時產(chǎn)生的事件</p><p> public void keyReleased(KeyEvent e) {</p><p><b> }</b></p><p>
66、; //鍵盤松開時產(chǎn)生的事件</p><p> public void keyTyped(KeyEvent e) {</p><p> //捕獲用戶的敲擊鍵盤的事件</p><p> if (name.getText().length() > 6) {</p><p> name.setText(name.getText().
67、substring(0, 6));</p><p> //獲取文本框內(nèi)的內(nèi)容 </p><p><b> }</b></p><p><b> }</b></p><p><b> });</b></p><p><b> 例3,單選
68、框,</b></p><p> mLabel = new JLabel("性別 :");</p><p> //建立名為“性別”的標簽框</p><p> mLabel.setBounds(210, 10, 50, 25);</p><p> //標簽框的位置和大小</p><p&g
69、t; bg = new ButtonGroup();</p><p> male = new JRadioButton("男");</p><p> male.setSelected(true);</p><p> female = new JRadioButton("女");</p><p>
70、 bg.add(male);</p><p> bg.add(female);</p><p> male.setBounds(260, 10, 60, 25);</p><p> female.setBounds(320, 10, 60, 25);</p><p><b> //“性別”單選框</b><
71、/p><p><b> 例4,復(fù)選框,</b></p><p> fLabel = new JLabel("愛好 :");</p><p> //建立名為“愛好”的標簽框</p><p> fLabel.setBounds(30, 700, 50, 25);</p><p>
72、; //標簽框的位置和大小</p><p> aihao1 = new JCheckBox("音樂");</p><p> aihao2 = new JCheckBox("足球");</p><p> aihao3 = new JCheckBox("旅行");</p><p>
73、; aihao4 = new JCheckBox("攝影");</p><p><b> //建立復(fù)選項</b></p><p> aihao1.setBounds(80, 700, 60, 25);</p><p> aihao2.setBounds(140, 700, 60, 25);</p>&l
74、t;p> aihao3.setBounds(200, 700, 65, 25);</p><p> aihao4.setBounds(265, 700, 60, 25);</p><p> //復(fù)選項的位置和大小</p><p><b> 4.3信息預(yù)覽模塊</b></p><p> 信息預(yù)覽模塊只由一個
75、標簽框和一個多行文本框組成,其中多行文本框是它的主要組件。它的功能是顯示從信息輸入模塊中提取出來的信息,如圖15所示。</p><p> 圖15 信息預(yù)覽界面</p><p><b> 4.4信息操作模塊</b></p><p> 信息操作模塊由3個按鈕組成,分別是預(yù)覽、重置和保存。它們完成了整個程序?qū)π畔⒌牟僮?。如圖16所示。</
76、p><p> 圖16 信息操作按鈕</p><p> 例5,預(yù)覽按鈕代碼,</p><p> JButton submit = new JButton("預(yù)覽");</p><p> //創(chuàng)建“預(yù)覽”按鈕</p><p> submit.setBounds(475, 730, 60, 25);
77、</p><p> //“預(yù)覽”按鈕的位置和大小</p><p> submit.addMouseListener(new MouseListener() {</p><p><b> //給按鈕添加事件</b></p><p> public void mouseClicked(MouseEvent e) {&
78、lt;/p><p> StringBuffer sb = new StringBuffer();</p><p> sb.append(nameLabel.getText()).append(name.getText());</p><p> //將提取的信息添加到預(yù)覽文本框中</p><p> 例6,重置按鈕代碼,</p>
79、<p> JButton cancel = new JButton("重置");</p><p> //創(chuàng)建“重置”按鈕</p><p> cancel.setBounds(575, 730, 60, 25);</p><p> //“重置”按鈕的位置和大小</p><p> cancel.addMo
80、useListener(new MouseListener() {</p><p><b> //給按鈕添加事件</b></p><p> public void mouseClicked(MouseEvent e) {</p><p> name.setText("");</p><p>
81、speciality.clearSelection();</p><p> if (aihao1.isSelected()) {</p><p> aihao1.setSelected(false);</p><p><b> }</b></p><p> public void mouseEntered(Mou
82、seEvent e) {</p><p><b> }</b></p><p><b> }</b></p><p> //文本框和多選框內(nèi)容制空</p><p> 例7,保存按鈕代碼,</p><p> class savel implements ActionL
83、istener </p><p><b> { </b></p><p> public void actionPerformed(ActionEvent e)</p><p><b> { </b></p><p> JFileChooser jf = new JFileChooser()
84、; </p><p> jf.showSaveDialog(A.this); </p><p><b> } </b></p><p><b> }</b></p><p> //保存文件的監(jiān)聽器</p><p> JButton save = new JButto
85、n("保存");</p><p> //創(chuàng)建“保存”按鈕</p><p> save.setBounds(675,730,60,25);</p><p> //“保存”按鈕的位置和大小</p><p> save.addActionListener(new savel());</p><p>
86、;<b> //給按鈕添加事件</b></p><p> 點擊保存按鈕,會彈出一個保存文件的對話框,在對話框中可以選擇文件將要保存的路徑地址和給文件命名,如圖17所示,</p><p> 圖17 保存文件對話框</p><p><b> 5、結(jié)論</b></p><p> 計算機的出現(xiàn),使
87、科技文明的發(fā)展跨入到了一個新的時代,計算機軟件的應(yīng)用,使人們的工作效率成倍提高。人們從復(fù)雜、繁重的工作中解脫出來,擁有了更加舒適、快捷、方便的工作方式和更多的自由時間。本論文描述的簡歷自動生成程序,就是本著快捷、方便的理念,為求職者提供了制作簡歷的一個新的、快捷的、方便的制作方式,使求職者制作簡歷的時間大大縮短,增加了尋找工作的時間,提高了找工作的效率。</p><p> 通過編寫這個程序,我學會了文本框內(nèi)容的
88、提取、顯示和保存對話框的使用等技術(shù),使我學習的Java語言得到了融會貫通,提高了我使用Swing編寫桌面應(yīng)用程序的能力。同時作為Java語言的初學者,我還有很多技術(shù)不會,這個程序的功能也不是十分的完善,如圖片的讀取和保存功能、添加新的信息項目的功能、具有打印功能的按鈕等。這些,我都將在今后繼續(xù)學習,提高Java語言的編程能力,不斷地完善簡歷自動生成程序,為求職者們提供更加方便的使用。</p><p><b&
89、gt; 6、致謝</b></p><p> 本文和設(shè)計是在XXX老師精心指導(dǎo)和大力支持下完成的。XXX老師以其嚴謹?shù)闹螌W態(tài)度、高度的敬業(yè)精神、兢兢業(yè)業(yè)、孜孜以求的工作作風和大膽創(chuàng)新的進取精神對我產(chǎn)生重要影響,她熟練的編程技術(shù)、開闊的視野和敏銳的思維給了我深深的啟迪。在此次畢業(yè)設(shè)計過程中,我學到了許多Java語言編程技術(shù),編程能力得到了顯著提高。</p><p> 最后,我
90、向XXX老師對于我的幫助,表示衷心的感謝。</p><p><b> 7、參考文獻</b></p><p> ?。?)耿祥義 張躍平 Java 2實用教程(第三版),清華大學出版社,2006.3第3版。</p><p> (2)龐永慶 龐麗娟 21天學通Java,電子工業(yè)出版社,2009.1</p><p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- java程序設(shè)計課程論文
- c程序設(shè)計畢業(yè)論文
- 基于java的學習管理系統(tǒng)(lms)—前臺程序設(shè)計-畢業(yè)論文
- java程序設(shè)計
- 基于java的學習管理系統(tǒng)(lms)——后臺程序設(shè)計-畢業(yè)論文
- 西洋跳棋智能程序設(shè)計畢業(yè)論文
- 電子時鐘程序設(shè)計畢業(yè)論文
- java程序設(shè)計復(fù)習
- java程序設(shè)計題目
- java程序設(shè)計-教案
- java課程設(shè)計---java程序設(shè)計
- java課程設(shè)計--java程序設(shè)計
- java語言程序設(shè)計-程序流程
- c++程序設(shè)計課程教學畢業(yè)論文
- 高校教材征訂系統(tǒng)程序設(shè)計-畢業(yè)論文
- java程序設(shè)計比賽說明
- 《面向?qū)ο蟪绦蛟O(shè)計(java)》
- java 程序設(shè)計實驗大綱
- java程序設(shè)計培訓(xùn)教程
- JAVA程序設(shè)計報告.doc
評論
0/150
提交評論