java系統的設計與實現
⑴ 基於java的通用試題庫管理系統的設計與實現(畢業論文)
如果是畢業論文管理系統,
可以從題目管理,任務書管理,評分|成績管理,答辯組管理,評委管理,學生信息管理,通知公告管理等功能角度分析設計與開發。
如果是試題庫管理系統,
可以從考場設置,監考設置,考試管理,考生管理,考場及考試時間查詢,教室管理,教職工管理,學生信息管理角度分析設計與開發。
關鍵字:java , 管理 , 系統 , 題庫 ,
⑵ java設計和實現圖形用戶界面的主要工作有哪些
步驟如下,都是我自己整理的:一維數組:1.聲明一維數組 在Java語言中,數組是一種引用類型,數組名如同對象名一樣,是一種引用。聲明數組是聲明一個標識符能引用數組,需要指定數組元素的類型。聲明一維數組有兩種格式: 數組元素類型 數組名[]; 或者 數組元素類型[] 數組名; Student stu[];//與Student[] stu; 等價2.創建一維數組 創建一維數組就是為數組分配存儲空間,需指定數組長度。數組創建後,數組名就標識用於存儲數組元素的存儲空間。創建一維數組的方法有3種: (1) 先聲明後創建 創建數組代碼的一般形式為:數組名字 = new 數組元素類型[元素個數]; 例如,代碼: int intArray []; intArray = new int[5]; (2) 聲明時創建 把聲明數組和創建數組的代碼結合在一起。例如: int intArray[] = new int[5]; (3) 直接賦值創建 在聲明數組時,直接給出數組的初值。例如: int [] intArray = {1,2,3,4,5}; 直接賦值創建數組的方法也稱為數組初始化。在數組初始化的代碼中,花括弧{}內初值間的分隔符是逗號」,」。系統根據數組初始化時提供的初值個數確定數組的元素個數,然後為數組分配空間,並為數組各元素依次賦初值。上述代碼相當於: int intArray[] = new int[5]; intArray[0]=1; intArray[1]=2; intArray[2]=3;intArray[3]=4; intArray[4]=5; 前兩種方法創建數組時,系統會給數組元素提供默認初始值:數值型數組元素的默認值是0;char類型數組元素的默認值是全0代碼字元;布爾類型數組元素的默認值是false。在Java中,所有數組都有一個成員length,程序可以訪問它,獲得數組的元素個數,但不能改變它。例如,按照前面數組intArray的定義,intArray.length的值是5。 3.引用一維數組元素 引用一維數組元素代碼的一般形式為 數組名[下標] 數組下標可以是整型常數或者整型表達式。數組下標范圍是0到數組名.length-1。為了確保程序安全性,Java運行系統對數組下標自動進行范圍越界檢查。 4.數組是一種引用類型 數組也是一種引用類型,一個數組名在不同時間可引用不同數組。代碼: myArray =firstArray; myArray =secondArray;4.1.2 多維數組 數組元素有多個下標的數組就是多維數組。多維數組是一種數組的數組,例如,當數組的元素又是一維數組時,就是一個二維數組。在Java程序中,可以有三維數組,或四維數組等。以下以二維數組為例說明多維數組。 1. 聲明二維數組 聲明二維數組的一般形式有以下3種(類似的代碼可以聲明多維數組):類型 數組名 [ ][ ] 類型 [ ][ ] 數組名 類型 [ ] 數組名 [ ] 2. 創建二維數組 創建二維數組對象的方法有多種: (1) 直接分配(平衡二維數組——矩陣):類型 數組名[][]=new 類型[長度1][長度2] (2) 從最高維開始,分別對每一維分配不等長的空間(非平衡數組):以二維數組為例,先指定第一維,創建有指定子數組個數的二維數組後,依次對每個子數組確定元素個數,並創建子數組。例如,以下代碼創建一個二維數組a[][],它有3個子數組,第一個子數組有4個元素,第2個子數組有5個元素,第3個子數組有2個元素: int a[][] = new int[3]; a[0]=new int [4]; a[1]=new int[5]; a[2]=new int[2];(3) 直接賦值創建 聲明二維數組,同時直接給出各子數組的元素。如果子數組的元素個數不同,則創建是一個非平衡的二維數組。例如,代碼: int [][]x= {{5,6,7}, {8,9,10,11}, {2,9} }; 3. 引用二維數組 二維數組元素的引用方式是: 數組名[下標1][下標2] 下標1是第一維下標,下標2是第二維下標。 4. 使用二維數組要注意的問題 對於二維數組,要注意以下兩點: (1) 二維數組名,length和二維數組名[下標1].length的區別。二維數組名.length是二維數組的子數組個數;二 維數組名[下標1].length是指定子數組的元素個數。(2) 二維數組名[下標]是一維數組。 public class Examle3_1 { public static void main(String args[]) { boolean bTb1[][] = new boolean[4][]; for (int i = 0; i < bTb1.length; i++) { bTb1[i] = new boolean[i + 1]; for (int k = 0; k < bTb1[i].length; k++) { System.out.print(bTb1[i][k] + " "); } System.out.println("");}}}
圖形用戶界面要先加入組件到容器中,然後再給組件添加監聽器,具體如下:圖形界面設計基礎 圖形用戶界面Graphical User Interface,GUI 5.1.1AWT和Swing Swing可以看作是AWT (AbstractWindow Toolkit)的改良版,而不是代替AWT,是對AWT的提高和擴展。所以在寫GUI 程序時,Swing 和AWT 都要作用。它們共存於Java基礎類(Java Foundation Class,JFC)中。 AWT 和 Swing 都提供了構造圖形界面元素的類,它們的不同:AWT 依賴於主平台繪制用戶界面組件;而Swing 有自己的機制,在主平台提供的窗口中繪制和管理界面組件。Swing 與AWT 之間的最明顯的區別是界面組件的外觀,AWT 在不同平台上運行相同的程序,界面的外觀和風格可能會有一些差異。然而,一個基於 Swing 的應用程序可能在任何平台上都會有相同的外觀和風格。Swing 中的類是從AWT繼承的,有些Swing類直接擴展AWT中對應的類。例如JApplet、JDialog、JFrame和JWindow。使用Swing設計圖形界面,主要引入兩個包: javax.swing 包含Swing 的基本類;java.awt.event 包含與處理事件相關的介面和類。 5.1.2組件和容器 組件(component)是圖形界面的基本元素,用戶可以直接操作,例如按鈕。容器(Container)是圖形界面的的復合元素,容器可以包含組件,例如面板。Java 語言為每種組件都預定義類,程序通過它們或它們的子類創建各種組件對象,如,Swing 中預定義的按鈕類JButton是一種類,程序創建的JButton對象,或JButton子類的對象就是按鈕。Java語言也為每種容器預定義類,程序通過它們或它們的子類創建各種容器對象。例如,Swing中預定義的窗口類JFrame是一種容器類,程序創建的JFrame或JFrame子類的對象就是窗口。為了統一管理組件和容器,為所有組件類定義超類,把組件的共有操作都定義在Component類中。同樣,為所有容器類定義超類 Container 類,把容器的共有操作都定義在 Container 類中。例如,Container 類中定義了 add()方法,大多數容器都可以用add()方法向容器添加組件。Component、Container 和Graphics 類是AWT 庫中的關鍵類。為能層次地構造復雜的圖形界面,容器被當作特殊的組件,可以把容器放入另一個容器中。例如,把若干按鈕和文本框分放在兩個面板中,再把這兩個面板和另一些按鈕放入窗口中。5.1.3事件驅動程序設計基礎 1.事件、監視器和監視器注冊 圖形界面上的事件是指在某個組件上發生用戶操作。對事件作監視的對象稱為監視器,監視器提供響應事件的處理方法。要讓監視器與事件對象關聯起來需對事件對象作監視器注冊,告訴系統事件對象的監視器。 2.實現事件處理的途征 java語言編寫事件處理程序主要有兩種方案;一個是程序重設handleEvent(Eventevt),採用這個方案的程序工作量稍大一些。另一個方案是程序實現一些系統設定的介面。java按事件類型提供多種介面,作為監視器對象的類需要實現相應的介面,即實現響應事件的方法。當事件發生時,系統內設的handleEvent(Event evt)方法就自動調用監視器的類實現的響應事件的方法。java.awt.event 包中用來檢測並對事件做出反應的模型包括以下三個組成元素: (1)源對象:事件「發生」這個組件上,它與一組「偵聽」該事件的對象保持著聯系。(2)監視器對象:一個實現預定義的介面的類的一個對象,該對象的類要提供對發生的事件作處理的方法。(3)事件對象:它包含描述當事件發生時從源傳遞給監視器的特定事件的信息。一個事件驅動程序要做的工作除創建源對象和監視器對象之外,還必須安排監視器了解源對象,或向源對象注冊監視器。每個源對象有一個已注冊的監視器列表,提供一個方法能向該列表添加監視器對象。只有在源對象注冊了監視器之後,系統才會將源對象上發生的事件通知監視器對象。3.事件類型和監視器介面 在 java 語言中,為了便於系統管理事件,也為了便於程序作監視器注冊,系統將事件分類,稱為事件類型。系統為每個事件類型提供一個介面。要作為監視器對象的類必須實現相應的介面,提供介面規定的響應事件的方法。再以程序響應按鈕事件為例,JButton類對象button可以是一個事件的激發者。當用戶點擊界面中與button對應的按鈕時,button對象就會產生一個ActionEvent類型的事件。如果監視器對象是obj,對象obj的類是Obj,則類Obj必須實現AWT中的ActionListener介面,實現監視按鈕事件的actionPerformed方法。button對象須用addActionListener方法注冊它的監視器obj。程序運行時,當用戶點擊 button 對象對應的按鈕時,系統就將一個 ActionEvent 對象從事件激發對象傳遞到監視器。ActionEvent對象包含的信息包括事件發生在哪一個按鈕,以及有關該事件的其他信息。