A. 用java怎麼通過表關聯實現數據的查詢、添加
表裡面有一個 menu_id 欄位 有一個menu_level 級別欄位 一個 parent_id欄位 這么說可懂
載入頂級菜單查詢級別為版頂級的記錄,下級菜單,則權查詢parent_id等於當前操作的頂級菜單的id依次類推,不懂就追問,這個實現,簡單,小菜一碟。可以給分了。
B. 如何用Java實現樹形結構啊
package tree;
import java.util.LinkedList;
import java.util.List;
/**
* 功能:把一個數組的值存入二叉樹中,然後進行3種方式的遍歷
*
* 參考資料0:數據結構(C語言版)嚴蔚敏
*
* 參考資料1:http://..com/question/81938912.html
*
* 參考資料2:http://cslibrary.stanford.e/110/BinaryTrees.html#java
*
* @author [email protected] @date: 2011-5-17
*
*/
public class BinTreeTraverse2 {
private int[] array = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
private static List<Node> nodeList = null;
/**
* 內部類:節點
*
* @author [email protected] @date: 2011-5-17
*
*/
private static class Node {
Node leftChild;
Node rightChild;
int data;
Node(int newData) {
leftChild = null;
rightChild = null;
data = newData;
}
}
public void createBinTree() {
nodeList = new LinkedList<Node>();
// 將一個數組的值依次轉換為Node節點
for (int nodeIndex = 0; nodeIndex < array.length; nodeIndex++) {
nodeList.add(new Node(array[nodeIndex]));
}
// 對前lastParentIndex-1個父節點按照父節點與孩子節點的數字關系建立二叉樹
for (int parentIndex = 0; parentIndex < array.length / 2 - 1; parentIndex++) {
// 左孩子
nodeList.get(parentIndex).leftChild = nodeList
.get(parentIndex * 2 + 1);
// 右孩子
nodeList.get(parentIndex).rightChild = nodeList
.get(parentIndex * 2 + 2);
}
// 最後一個父節點:因為最後一個父節點可能沒有右孩子,所以單獨拿出來處理
int lastParentIndex = array.length / 2 - 1;
// 左孩子
nodeList.get(lastParentIndex).leftChild = nodeList
.get(lastParentIndex * 2 + 1);
// 右孩子,如果數組的長度為奇數才建立右孩子
if (array.length % 2 == 1) {
nodeList.get(lastParentIndex).rightChild = nodeList
.get(lastParentIndex * 2 + 2);
}
}
/**
* 先序遍歷
*
* 這三種不同的遍歷結構都是一樣的,只是先後順序不一樣而已
*
* @param node
* 遍歷的節點
*/
public static void preOrderTraverse(Node node) {
if (node == null)
return;
System.out.print(node.data + " ");
preOrderTraverse(node.leftChild);
preOrderTraverse(node.rightChild);
}
/**
* 中序遍歷
*
* 這三種不同的遍歷結構都是一樣的,只是先後順序不一樣而已
*
* @param node
* 遍歷的節點
*/
public static void inOrderTraverse(Node node) {
if (node == null)
return;
inOrderTraverse(node.leftChild);
System.out.print(node.data + " ");
inOrderTraverse(node.rightChild);
}
/**
* 後序遍歷
*
* 這三種不同的遍歷結構都是一樣的,只是先後順序不一樣而已
*
* @param node
* 遍歷的節點
*/
public static void postOrderTraverse(Node node) {
if (node == null)
return;
postOrderTraverse(node.leftChild);
postOrderTraverse(node.rightChild);
System.out.print(node.data + " ");
}
public static void main(String[] args) {
BinTreeTraverse2 binTree = new BinTreeTraverse2();
binTree.createBinTree();
// nodeList中第0個索引處的值即為根節點
Node root = nodeList.get(0);
System.out.println("先序遍歷:");
preOrderTraverse(root);
System.out.println();
System.out.println("中序遍歷:");
inOrderTraverse(root);
System.out.println();
System.out.println("後序遍歷:");
postOrderTraverse(root);
}
}
C. 全國計算機2級考試
二級可以從VFP,c語言,java,c++,vb,access,任選一科,考過即可,無論考哪一顆都要考二級公共基礎知識。85元
公共基礎知識
基本要求
1.掌握演算法的基本概念。
2.掌握基本數據結構及其操作。
3.掌握基本排序和查找演算法。
4.掌握逐步求精的結構化程序設計方法。
5.掌握軟體工程的基本方法,具有初步應用相關技術進行軟體開發的能力。
6.掌握資料庫的基本知識,了解關系資料庫的設計。
考試內容
一、基本數據結構與演算法
1.演算法的基本概念;演算法卜敬喊復雜度的概念和意義(時間復雜度與空間復雜度)。
2.數據結構的定義;數據的邏輯結構與存儲結構;數據結構的圖形表示;線性結構與非線性結構的概念。
3.線性表的定義;線性表的順序存儲結構及其插入與刪除運算。
4.棧和隊列的定義;棧和隊列的順序存儲結構及其基本運算。
5.線性單鏈表、雙向鏈表與循環鏈表的結構及其基本運算。
6.樹的基本概念;二叉樹的定義及其存儲結構;二叉樹的前序、中序和後序遍歷。
7.順序查找與二分法查找演算法;基本排序演算法(交換類排序,選擇類排序,插入類排序)。
二、程序設計基礎
1.程序設計方法與風格
2.結構化程序設計。
3.面向對象的程序設計方法,對象,方法,屬性及繼承與多態性。
三、軟體工程基礎
1.軟體工程基本概念,軟體生命周期概念,軟體工具與軟體開發環境。
2.結構化分析方法,數據流圖,數據字典,軟體需求規格說明書。
3.結構化設計方法,總體設計與詳細設計。
4.軟體測試的方法,白盒測試與黑盒測試,測試用例設計,軟體測試的實施,單元測試、集成測試和系統測試。
5.程序的調試,靜態調試與動態調試。
四、資料庫設計基礎
1.資料庫的基本概念:資料庫,資料庫管理系統,資料庫系統。
2.數據模型,實體聯系模型及E―R圖,從E―R圖導出關系數據模型。
3.關系代數運算,包括集合運算及選擇、投影、連接運算,資料庫規范化理 論。
4.資料庫設計方法和步驟:需求分析、概念設計、邏輯設計和物理設計的相關策略。
考試方式
1.公共基礎知識的考試方式為稿段筆試,與C語言程序設計(C++語言程序設計、Java語言程序設計、Visual Basic語言程序設計、Visual FoxPro資料庫程序設計或Access資料庫程序設計)的筆試部分合為一張試卷,公共基礎知識部分佔全卷的30分。
2.公共基礎知識有l0道選擇題和5道填空題。
C語言程序設計
基本要求
1.熟悉TURBO C集成環境。
2.熟練掌握結構化程序設計的方法,具有良好的程序設型野計風格。
3.掌握程序設計中簡單的數據結構和演算法。
4.TURBO C的集成環境下,能夠編寫簡單的C程序,並具有基本的糾錯和調試程序的能力。
考試內容
一、C語言的結構
1.程序的構成,MAIN函數和其他函數。
2.頭文件,數據說明,函數的開始和結束標志。
3.源程序的書寫格式。
4.C語言的風格。
二、數據類型及其運算
1.C的數據類型(基本類型,構造類型,指針類型,空類型)及其定義方法。
2.C運算符的種類、運算優先順序和結合性。
3.不同類型數據間的轉換與運算。
4.C表達式類型(賦值表達式,算術表達式,關系表達式,邏輯表達式,條件表達式,逗號表達式)和求值規則。
三、基本語句
1.表達式語句,空語句,復合語句。
2.數據的輸入與輸出,輸入輸出函數的調用。
3.復合語句。
4.GOTO語句和語句標號的使用。
四、選擇結構程序設計
1.用IF語句實現選擇結構。
2.用SWITCH語句實現多分支選擇結構。
3.選擇結構的嵌套。
五、循環結構程序設計
1.FOR循環結構。
2.WHILE和DO WHILE循環結構。
3.CONTINUE語句和BREAK語句。
4.循環的嵌套。
六、數組的定義和引用
1.一維數組和多維數組的定義、初始化和引用
2.字元串與字元數組。
七、函數
1.庫函數的正確調用。
2.函數的定義方法。
3.函數的類型和返回值。
4.形式參數與實在參數,參數值的傳遞。
5.函數的正確調用,嵌套調用,遞歸調用。
6.局部變數和全局變數。
7.變數的存儲類別(自動,靜態,寄存器,外部),變數的作用域和生存期。
8.內部函數與外部函數。
八、編譯預處理
1.宏定義:不帶參數的宏定義;帶參數的宏定義。
2.「文件包含」處理。
九、指針
1.指針與指針變數的概念,指針與地址運算符。
2.變數、數組、字元串、函數、結構體的指針以及指向變數、數組、字元串、函數、結構體的指針變數。通過指針引用以上各類型數據。
3.用指針作函數參數。
4.返回指針值的指針函數。
5.指針數組,指向指針的指針,MAIN函數的命令行參數。
十、結構體(即「結構」)與共用體(即「聯合」)
1.結構體和共用體類型數據的定義方法和引用方法。
2.用指針和結構體構成鏈表,單向鏈表的建立、輸出、刪除與插入。
十一、位運算
1.位運算符的含義及使用。
2.簡單的位運算。
十二、文件操作
只要求緩沖文件系統(即高級磁碟I/O系統),對非標准緩沖文件系統(即低級磁碟I/O系統)不要求。
1.文件類型指針(FILE類型指針)。
2.文件的打開與關閉(FOPEN,FCLOSE)。
3.文件的讀寫(FPUTC,FGETC,FPUTS,FGETS,FREAD,FWRITE,FPRINTF,FSCANF函數),文件的定位(REWIND,FSEEK函數)。
考試方式
1.筆試:120分鍾,滿分100分,其中含公共基礎知識部分的30分。
2.上機:60分鍾,滿分100分。
上機操作包括:
(1)填空。
(2)改錯。
(3)編程。
VB介紹
一、Visual Basic程序開發環境
1、Visual Basic的特點和版本。
2、Visual Basic的啟動與退出。
3、主窗口:
(1)標題和菜單。
(2)工具欄。
4、其他窗口:
(1)窗體設計器和工程資源管理器。
(2)屬性窗口和工具箱窗口。
二、對象及其操作
1、對象:
(1)Visual Basic的對象。
(2)對象屬性設置。
2、窗體:
(1)窗體的結構與屬性。
(2)窗體事件。
3、控制項:
(1)標准控制項。
(2)控制項的命名和控制項值。
4、控制項的畫法和基本操作。
5、事件驅動。
三、數據類型及其運算
1、數據類型:
(1)基本數據類型。
(2)用戶定義的數據類型。
(3)枚舉類型。
2、常量和變數:
(1)局部變數與全局變數。
(2)變體類型變數。
(3)預設聲明。
3、常用內部函數。
4、運算符與表達式:
(1)算術運算符。
(2)關系運算符與邏輯運算符。
(3)表達式的執行順序。
四、數據輸入、輸出
1、數據輸出:
(1)Print方法。
(2)與Print方法有關的函數(Tab、Spc、Space $)。
(3)格式輸出(Fomat$)。
2、InputBox函數。
3、MsgBox函數和MsgBox語句。
4、字形。
5、列印機輸出:
(1)直接輸出。
(2)窗體輸出。
五、常用標准控制項
1、文本控制項:
(1)標簽。
(2)文本框。
2、圖形控制項:
(1)圖片框,圖像框的屬性,事件和方法。
(2)圖形文件的裝入。
(3)直線和形狀。
3、按鈕控制項。
4、選擇控制項:復選框和單選按鈕。
5、選擇控制項:列表框和組合框。
6、滾動條。
7、計時器。
8、框架。
9、焦點與Tab順序。
六、控制結構
1、選擇結構:
(1)單行結構條件語句。
(2)塊結構條件語句。
(3)IIf函數。
2、多分支結構。
3、For循環控制結構。
4、當循環控制結構。
5、Do循環控制結構。
6、多重循環。
7.GoTo型控制:
(1) GoTo語句。
(2) On-GoTo語句。
七、數組
1、數組的概念:
(1)數組的定義。
(2)靜態數組與動態數組。
2、數組的基本操作:
(1)數組元素的輸入、輸出和復制。
(2)For Each...Next語句。
(3)數組的初始化。
3、控制項數組。
C++語言程序設計
基本要求
1. 掌握C++語言的基本語法規則。
2. 熟練掌握有關類與對象的相關知識。
3. 能夠採用面向對象的編程思路和方法編寫應用程序。
4. 能熟練使用Visual C++6.0集成開發環境編寫和調度程序。
考試內容
一、 C++語言概述
1. 了解C++語言的基本符號。
2. 了角C++語言的詞彙(保留字、標識符、常量、運算符、標點符號等)。
3. 掌握C++程序的基本框架(結構程序設計框架、面向對象程序設計框架等)。
4. 能夠使用Visual C++ 6.0集成開發環境編輯、編譯、運行與調度程序。
二、 數據類型、表達式和基本運算
1. 掌握C++數據類型(基本類型,指針類型)及其定義椒ā?br> 2. 了解C++的常量定義(整型常量,字元常量,邏輯常量,實型常量,地址常量,符號常量)。
3. 掌握變數的定義與使用方法(變數的定義及初始化,全局變數,局部變數)。
4. 掌握C++運算符的種類、運算優先順序和結合性。
5. 熟練掌握C++表達式類型及求值規則(賦值運算,算術運算符和算術表達式,關系運算符和關系表達式,邏輯運算符和邏輯表達式,條件運算,指針運算,逗號表達式)。
三、 C++的基本語句
1. 掌握C++的基本語句,例如賦值語句、表達式語句、復合語句、輸入、輸出語句和空格語句等。
2. 用if語句實現分支結構。
3. 用switch語句實現多分支選擇結構。
4. 用for語句實現循環結構。
5. 用while語句實現循環結構。
6. 用do…while語句實現循環結構。
7. 轉向語句(goto,continue,break和return)。
8. 掌握分支語句和循環語句的各種嵌套使用。
四、 數組、指針與引用
1. 掌握一維數組的定義、初始化和訪問,了解多維數組的定義、初始化和訪問。
2. 了解字元串與字元數組。
3. 熟練掌握常用字元串函數(strlen,strcpy,streat,strcmp,strstr等)。
4. 指針與指針變數的概念,指針與地址運算符,指針與數組。
5. 引用的基本概念,引用的定義與使用。
Java語言程序設計
基本要求
1. 掌握Java語言的特點,實現機制和體系結構。
2. 掌握Java語言中面向對象的特性。
3. 掌握Java語言提供的數據類型和結構。
4. 掌握Java語言編程的基本技術。
5. 會編寫Java用戶界面程序。
6. 會編寫Java簡單應用程序。
7. 會編寫Java小應用程序(Applet)。
8. 了解Java的應用。
考試內容
一、Java語言的特點和實現機制
二、Java體系結構
1. JDK目錄結構。
2. Java的API結構。
3. 開發環境設置。
4. Java程序結構。
三、Java語言中面向對象的特性
1. 面向對象編程的基本概念和特徵。
2. 類的基本組成和使用。
3. 對象的生成、使用和刪除。
4. 介面與包。
5. Java類庫的常用類和介面。
四、Java簡單數據類型及運算
1. 變數和常量。
2. 基本數據類型及轉換。
3. Java類庫中對簡單數據類型的類包裝。
4. 運算符和表達式運算。
5. 數組和字元串。
五、Java語言的基本語句
1. 表達式語句。
2. 條件語句。
3. 循環語句。
4. 注釋語句。
5. 異常處理。
六、Java編程技術基礎
1. 線程的概念和使用。
2. 同步與共享。
3. 串列化概念和目的。
4. 串列化方法。
5. 串列化的舉例。
6. 基於文本的應用。
7. 文件和文件I/O。
8. 匯集(collections)介面。
七、編寫用戶界面程序
1. 圖形用戶界面。
2. AWT庫簡介。
3. Swing簡介。
4. AWT與Swing比較。
八、編寫小應用程序(Applet)
1. 小應用程序概念。
2. 安全機制。
3. Applet執行過程。
4. Applet的圖形繪制。
5. Applet的窗口。
6. Applet的工作環境。
7. Java Application和Applet。
九、Java的應用
十、J2DK的下載和操作
考試方式
1. 筆試:90分鍾,滿分100分,其中含公共基礎知識部分的30分。
2. 上機操作:90分鍾,滿分100分。
上機題目類型要求:
(1) 基本操作。
(2) 簡單應用。
3 綜合應用
Access資料庫程序設計
基本要求
1、 具有資料庫系統的基礎知識。
2、 基本了解面向對象的概念。
3、 掌握關系資料庫的基本原理。
4、 掌握資料庫程序設計方法。
5、 能使用Access建立一個小型資料庫應用系統。
考試內容
一、資料庫基礎知識
1、 基本概念:
資料庫,數據模型,資料庫管理系統,類和對象,事件。
2、 關系模型(實體的完整性,參照的完整性,用戶定義的完整性)關系模式,關系,元組,屬性,欄位,域,值,主關鍵字等。
3、 關系運算基本概念:
選擇運算,投影運算,連接運算。
4、 SQL基本命令:查詢命令,操作命令。
5、 Access系統簡介:
(1)Access系統的基本特點。
(2)基本對象:表,查詢,窗體,報表,頁,宏,模塊。
二、資料庫和表的基本操作
1、 創建資料庫:
(1)創建空資料庫。
(2)使用向導創建資料庫。
2、 表的建立:
(1) 建立表結構:使用向導,使用表設計器,使用數據表。
(2) 設置欄位屬性。
(3) 輸入數據:直接輸入數據,獲取外部數據。
3、 表間關系的建立與修改:
(1) 表間關系的概念:一對一,一對多。
(2) 設置參照完整性。
(3) 建立表間關系。
4、 表的維護:
(1) 修改表結構:添加欄位,修改安段,刪除欄位,重新設置主關鍵字。
(2) 編輯表內容:添加記錄,個性記錄,刪除記錄,復制記錄。
(3) 調整表外觀。
5、 表的其他操作:
(1) 查找數據。
(2) 替換數據。
(3) 排序記錄。
(4) 篩選記錄。
三、查詢的基本操作
1、查詢分類
(1) 選擇查詢。
(2) 參數查詢。
(3) 交叉表查詢。
(4) 操作查詢。
(5) SQL查詢。
2、查詢准則
(1) 運算符。
(2) 函數。
(3) 表達式。
3、創建查詢
(1) 操作已創建的查詢
(2) 編輯查詢中的欄位。
(3) 編輯查詢中的數據源。
(4) 排序查詢的結果。
四、窗體的基本操作
1、 窗體分類:
(1) 縱欄式窗體
(2) 表格式窗體
(3) 主/子窗體
(4) 數據表窗體
(5) 圖表窗體
(6) 數據透視表窗體
2、 創建窗體:
(1) 使用向導創建窗體。
(2) 使用設計器創建窗體:控制項的含義及種類,在窗體中添加和修改控制項,設置控制項的常見屬性。
五、報表的基本操作
1、報表分類:
(1) 縱欄式報表。
(2) 表格式報表。
(3) 圖表報表。
(4) 標簽報表。
2、使用向導創建報表。
3、使用設計器編輯報表。
4、在報表中計算和匯總。
六、頁的基本操作
1、數據訪問頁的概念。
2、創建數據訪問頁:
(1) 自動創建數據訪問頁。
(2) 使用向導數據訪問頁。
七、宏
1、宏的基本概念。
2、宏的基本操作:
(1) 創建宏;創建一個宏,創建宏組。
(2) 運行宏。
(3) 在宏中使用條件。
(4) 設置宏操作參數。
(5) 常用的宏操作。
八、模塊
1、模塊的基本概念:
(1) 類模塊。
(2) 標准模塊。
(3) 將宏轉換為模塊。
2、創建模塊:
(1) 創建VBA模塊:在模塊中加入過程,在模塊中執行宏。
(2) 編寫事件過程:鍵盤事件,滑鼠事件,窗口事件,操作事件和其他事件。
3、調用和參數傳遞。
4、VBA程序設計基礎:
(1) 面向對象程序設計的基本概念。
(2) VBA編程環境:進入VBE,BE界面。
(3) VBA編程基礎:常量,變數,表達式。
(4) VBA程序流程式控制制:順序控制,選擇控制,循環控制。
(5) VBA程序的調試:設置斷點,單步跟蹤,設置監視點。
考試方式
1、筆試:90分鍾,滿分100分,其中含公共基礎知識部分的30分。
2、上機操作:90分鍾,滿分100分。
上機操作包括:
(1) 基本操作。
(2) 簡單應用。
(3) 綜合應用
2005年計算機等級考試二級Visual FoxPro(VFP)考試大綱
基本要求
1.具有資料庫系統的基礎知識。
2.基本了解面向對象的概念。
3.掌握關系資料庫的基本原理。
4.掌握資料庫程序設計方法。
5.能夠使用Visual FoxPro建立一個小型的資料庫應用系統。
考試內容
一、Visual Foxpro的基礎知識
1.基本概念:資料庫,數據模型,資料庫管理系統、類和對象、事件、方法。
2.關系資料庫:
(1)關系資料庫:關系模型、關系模式、關系、元組、屬性、域、主關鍵字和外部關鍵字。
(2)關系運算:投影、選擇、聯接。
(3)資料庫的一致性和完整性:實體完整性、域完整性、參照完整性。
3.Visual FoxPro系統特點與工作方式:
(1)Windows版本的資料庫特點。
(2)數據類型和主要文件類型。
(3)各種設計器和向導。
(4)工作方式:交互方式(命令方式、可視化操作)和程序運行方式。
4.Visual Foxpro的基本數據元素:
(1)常量、變數、表達式。
(2)常用函數:字元處理函數、數值運算函數、日期時間函數、數據類型轉換函數、測試函數。
二、Visual FoxPro資料庫的基本操作
1.資料庫和表的建立、修改與有效性檢驗:
(1)表結構的建立與修改。
(2)表記錄的瀏覽、增加、刪除與修改。
(3)創建資料庫,向資料庫添加或從資料庫刪除表。
(4)設定欄位級規則和記錄級規則。
(5)表的索引:主索引、候選索引、普通索引、唯一索引。
2.多表操作:
(1)選擇工作區。
(2)建立表之間的關聯:一對一關聯、一對多關聯。
(3)設置參照的完整性。
(4)表的聯接JOIN:
內部聯接
外部連接:左聯接、右聯接、完全聯接。
(5)建立表間臨時關系。
3.建立視圖與數據查詢:
(1)查詢文件的建立、執行與修改。
(2)視圖文件的建立、查看與修改。
(3)建立多表查詢。
三、關系型資料庫標准語言SQL
1、SQL的數據定義功能:
(1)CREATETABLE-SQL。
(2)ALTERTABLE-SQL。
2.SQL的數據修改功能:
(1)簡單查詢。
(2)嵌套查詢。
(3)聯接查詢。
(4)分組與計算查詢。
(5)集合的並運算。
四、項目管理器、設計器和向導的使用
1.使用項目管理器:
(1)使用「數據」選項卡。
(2)使用「文檔」選項卡。
2.使用表單設計器:
(1)在表單中加入和修改控制項對象。
(2)設定數據環境。
3.使用菜單設計器:
(1)建立主選項。
(2)設計子菜單。
(3)設定菜單選項程序代碼。
4.使用報表設計器:
(1)生成快速表。
(2)修改報表布局。
(3)設計分組報表。
(4)設計多欄報表。
5.使用應用程序向導。
五、Visual FoxPro程序設計
1、命令文件建立與運行:
(1)程序文件建立。
(2)簡單的交互方式輸入輸出命令。
(3)應用程序的調試與執行。
2.結構化程序設計:
(1)順序結構程序設計。
(2)分支結構程序設計。
(3)循環結構程序設計。
3.過程與過程調用:
(1)子程序設計與調用。
(2)過程與過程文件。
(3)局部變數和全局變數、過程調用中的參數傳遞。
考試方式
1.筆試:90分鍾。
2.上機考試:90分鍾。
上機操作包括:
(1)基本操作。
(2)簡單應用。
(3)綜合應用。
其中 VFP,ACCESS都很簡單,vfp是過關率最高的
三級考試內容:
網路技術
參考教材:根據教育部考試中心制訂的《全國計算機等級考試考試大綱04版》中對三級網路技術的要求編寫的。
課程內容:三級網路技術內容包括:計算機基礎知識、網路基本概念、區域網基礎、網路操作系統、網際網路基礎、網路安全技術、網路應用——電子商務和電子政務、網路技術展望,對網路管理與安全的知識也給予相當的重視。要求三級網路技術的合格考生應具有計算機基礎知識,了解和掌握區域網、網際網路的基本原理,熟悉計算機網路系統和組建技術,從而具備從事網路管理項目和簡單應用系統開發和維護的基本能力。
三級PC
參考教材:《全國計算機等級考試考試大綱》
課程內容:計算機應用的基礎知識、80x86微處理器與匯編語言程序設計、PC機組成原理與介面技術、Windows 98的基本原理以及PC機常用外圍設備。按照考試大綱要求,三級PC技術的合格考生應具有計算機及其應用的基礎知識,掌握Pentium微處理器及PC計算機的工作原理,熟悉PC機常用外圍設備的功能與結構,了解Windows 98操作系統的基本原理,能使用匯編語言進行程序設計。
三級資料庫技術
參考教材:《全國計算機等級考試三級教程--資料庫技術》(2004版) 高等教育出版社 2004年6月出版
課程內容:本課程是為全國計算機等級考試三級--資料庫技術而專門開發的,它依據最新的考試大綱和指定教材,內容包括了大綱中規定的所有知識點,包括:計算機基礎知識、數據結構、操作系統、資料庫相關技術,並對一些重點、難點問題進行了細致的講解。旨在幫助考生加深對課程知識點的正確理解,提高應試能力和水平。
三級---信息管理技術
參考教材:根據教育部考試中心制訂的《全國計算機等級考試考試大綱》中對三級信息管理技術的要求編寫的。
課程內容:培養學生具有計算機基礎知識,了解和掌握軟體工程、資料庫的基本原理和方法,熟悉計算機信息系統的開發方法和技術,從而具備從事管理信息系統項目和辦公自動化系統項目開發和維護的基本能力。每章有學習目標與要求、內容要點、例題分析與解答、自測題及答案。各章在概括主要內容要點的基礎上,對大量的例題做了分析和解答,同時編制了大量的自測題並給出了參考答案供考生練習和參照。
D. java開發工程師 考試科目有哪些啊
考試科目是:Java SE 8 Programmer I | 1Z0-808和:Java SE 8 Programmer II | 1Z0-809。內容偏重於Java語法及JDK的內容。其對應的最主要的學習課程是SL-275。
OCJP(Oracle Certified Java Programmer)是Oracle認證的Java程序員的簡稱,即Sun被Oracle收購之前的SCJP,是Java語言的擁有廠商對全球的Java開發人員進行的 技術水平認證。該認證在國際上獲得了IT 公司的普遍認可, 是目前國際上最熱門的IT認證之一。
考試對象:在校大學生,Java程序開發人員,項目經理,欲考取OCJP認證的相關人員或是對JAVA有興趣的人等。
要求具備的能力如下:
-使用Java編程語言創建Java應用程序和applets。
-定義和描述垃圾搜集,安全性和Java虛擬機(JVM)。
-描述和使用Java語言面向對象的特點。
-開發圖形用戶界面(GUI)。利用Java支持的多種布局管理。
-描述和使用Java的事件處理模式。
-使用Java語言的滑鼠輸入、文本、窗口和菜單窗口部件。
-使用Java的例外處理來控製程序執行和定義用戶自己的例外事件。
-使用Java語言先進的面向對象特點, 包括方法重載、方法覆蓋、抽象類、介面、final、static和訪問控制。
-實現文件的輸入/輸出 (I/O)。
-使用Java語言內在的線程模式來控制多線程。
-使用Java 的Sockets機制進行網路通信。
E. java介面作用是什麼
介面是一種規范
軟體開發大多是一個協作性的工作:電器和插座分別是不同人完成的,有了介面大家就能分頭開干,都按照介面來辦事,各自做完就能輕松地整合到一起。各部分的測試也更加方便。
介面在開發過程中可以快速分離工作內容。
比如調用者在寫業務邏輯的時候需要一個功能,可能是資料庫訪問,或者復雜計算,但是他的工作專注於實現業務邏輯,不想分開精力去做底層實現,那麼他只需要先實現一個介面,定義了規范,然後就可以繼續他的業務邏輯代碼了。而實現者可以根據這個介面規范,做具體的實現。
這樣通過使用介面就可以快速的分離工作內容,達到團隊並行工作的目的。
(5)java語言如何實現三級菜單擴展閱讀:
功能
在Java語言規范中,一個方法的特徵僅包括方法的名字,參數的數目和種類,而不包括方法的返回類型,參數的名字以及所拋出來的異常。在Java編譯器檢查方法的重載時,會根據這些條件判斷兩個方法是否是重載方法。
但在Java編譯器檢查方法的置換時,則會進一步檢查兩個方法(分處超類型和子類型)的返還類型和拋出的異常是否相同。
介面實現和類繼承的規則不同,為了數據的安全,繼承時一個類只有一個直接父類,也就是單繼承,但是一個類可以實現多個介面,介面彌補了類的不能多繼承缺點,繼承和介面的雙重設計既保持了類的數據安全也變相實現了多繼承。
Java介面本身沒有任何實現,因為Java介面不涉及表象,而只描述public行為,所以Java介面比Java抽象類更抽象化。但是介面不是類,不能使用new 運算符實例化一個介面。
F. 誰能發個全國計算機考試的JAVA真題給我筆試題
Java是一個很好的面向對象語言,這是08年的試題。你可以在網上下更全套的試題練習。
全國2008年10月考試Java 語言程序設計(一)試題
課程代碼:04747
一、單項選擇題(本大題共10小題,每小題1分,共10分)
在每小題列出的四個備選項中只有一個是符合題目要求的,請將其代碼填寫在題後的括弧內。錯選、多選或未選均無分。
1.下述字元組合不能作為Java程序標識符的是( )
A.Aa12 B.大x
C.y小 D.5x
2.以下程序代碼的輸出的結果是( )
int x=53;
System. out. println(1.0+x/2);
A.27.0 B.27.5
C.1.026 D.1.026.5
3.參照以下Java代碼,以下四個敘述中最確切的是( )
class A{
int x; static int y;
void fac(String s){Syatem. out. println(」字元串:」+s);}
}
A.x、y和s都是成員變數
B.x是實例變數、y是類變數、s是局部變數
C.x和y是實例變數、s是參數
D.x、y和s都是實例變數
4.需要分析字元串,並將字元串分解成可被獨立使用的單詞,可使用java. util包中的類是
( )
A.String B.StringBuffer
C.StringTokenizer D.stringTokenizer
5.要為程序的子窗口設定一個由字元串s指定的名字,可以採用的代碼是( )
A.JFrame(s) B.window(s)
C.new JFrame(s) D.super(s)
6.以下關於菜單的敘述中,正確的是( )
A.菜單分三級定義,最高一級的是菜單條,菜單條中放菜單,菜單中放菜單項
B.菜單分三級定義,最高一級的是菜單,菜單中放菜單條,菜單條中放菜單項
C.菜單分兩級定義,最高一級的是菜單,菜單中放菜單項
D.菜單分兩級定義,最高一級的是菜單條,菜單條中放菜單項
7.以下所述內容全部是字型要素的是( )
A.字體、字形和大小 B.字體、風格和字型大小
C.字形、風格和字型大小 D.字形、顏色和字型大小
8.用Thread子類實現多線程的步驟順序是( )
A.聲明Thread類的子類,創建Thread子類的實例,讓線程調用start()方法
B.聲明Thread類的子類,在子類中重新定義run()方法,創建Thread子類的實例
C.創建Thread子類的實例,讓線程調用start()方法
D.聲明Thread類的子類,在子類中重新定義run()方法,創建Thread子類的實例,讓線程調用start()方法
9.為16位Unicode字元流提供讀和寫操作支持的類分別是( )
A.FileInputStream類和FileOutputStream類
B.InputStream類和OutputStream類
C.FileReader類和FileWriter類
D.File_Reader類和File_Writer類
10.能利用對象提供的方法獲得流對象和實現網路連接的是( )
A.URLConnection對象 B.URL對象
C.InetAddress對象 D.TCP/IP對象
二、填空題(本大題共10小題,每小題2分,共20分)
請在每小題的空格中填上正確答案。錯填、不填均無分。
11.一個小應用程序必須定義成一個_________。
12.用條件運算符構造一個表達式:goal等於10時,表達式的值為「對了!」,否則,表達式的值為「錯了!」。這個表達式是_________。
13.類是對一組相同對象的描述,類概括了同類對象的共有性質:_________。
14.設有數組a和b的定義如下:
int[]a={1,2,3};int[]b={4,5,6}
……
執行以下代碼「a=b;」,除了完成賦值操作之外,引起系統額外要做的工作是_________。
15. _________布局使容器的多個組件擁有同一個顯示空間,某一時刻只能顯示一個組件。
16.Java語言為處理滑鼠事件提供兩個介面:_________介面和MouseMotionListener介面。
17.某個繪圖方法設置成「異或模式」繪圖,並用黃色作為異或模式設定的繪圖顏色。如果當時背景色為紅色,並用紅色繪制線段,則線段的實際顏色是_________。
18.程序員用Java語言編寫多線程應用程序,程序員能控制的關鍵性工作有兩個方面:一是編寫線程的_________方法;二是建立線程實例。
19.BufferedWriter類是提供緩沖式輸出的類。程序需要先創建_________對象,再利用這個對象創建BufferedWriter對象。
20.在Java語言中,客戶端使用的套接字類是_________。
三、簡答題(本大題共6小題,每小題3分,共18分)
21.請寫出表示條件「x=2與y=3有且只有一個成立」的Java表達式」。
22.如果類Student是類Person的子類,類Undergraate是類Student的子類,請指出以下代碼行中哪些是不合法的。
Person p1=new Student();
Person p2=new Undergraate();
Student s1=new Person();
Student s2=new Undergraate();
Undergraate ug1=new Person();
Undergraate ug2=new Student();
Object ob=new Student();
23.請寫出程序處理文本框輸入結束事件(回車)添加監視器的方法,以及監視器類必須實現的介面方法。
24.請寫出一條語句,能夠繪制一條從點(20,30)開始,長為100像素的水平線段。設調用的對象是類型為Graphics的g。
25.某Java程序要使用文件輸入輸出流,請寫出該程序所需要的import語句。
26.JDBC是Java程序與資料庫連接的API,請寫出JDBC能做的三件事情。
四、程序填空題(本大題共5小題,每空2分,共20分)
27.方法int maxDigit(int n)的功能是找出十進制整數n各位中最大的一位數字。例如,n=23765,該方法的返回值是7。
static int maxDigit(int n){
int c=0,d;
while(n>0){
d=_______;
if(d>c) c=d;
n/=10;
}
________;
}
28.某程序的界麵包含一個文本區text1、一個文本框text2和一個按鈕button。實現在文本區中輸入整數序列後,點擊按鈕,程序響應按鈕事件,累計文本區輸入的整數序列,並將總和輸出在文本框中。這里給出的是其中相應按鈕事件的方法。
public void actionPerformed(ActionEvent e){
int sum;
if(e.getSource()==button){
String s=text1.________;//獲取text1中的信息
StringTokenizer fenxi=new StringTokenizer(s,」,,,\n」);
int n=fenxi.countTokens();
double a[]=new double[n];
for(int i=0;i<n;i++){
String temp=fenxi.nextToken();
a[i]=Double.valueOf(temp).doubleValue();
}
sum=0;
for(int i=0;i<n;i++){
__________;
}
text2.setText(」」+sum);//刷新顯示。
}
}
29.以下是生成菜單項對象,以及菜單項選擇事件處理方法的部分代碼。要求當菜單項singingItem被選中時,在文本框text中輸出「唱歌菜單項被選中!」的字樣。
……
singingItem=new________(」唱歌」);//生成菜單項對象
……
public void actionPerformed(ActionEvent e){
if(e.getSource()==singingItem)
text.setText(e.________()+ 」菜單項被選中!」);
}
30.某小應用程序實現幻燈片放映。小應用程序的init()方法將幻燈片讀入數組中存儲和注冊滑鼠監視器。程序運行時,單擊滑鼠,就順序變換放映幻燈片的序號。這里給出的是其中的paint()方法和mousePressed()方法。
final int number=30;//假定幻燈片有30張
int count=0;
Image[]pic=new Image[number];
public void paint(______gc){
if((pic[count])!=null)
gc.drawImage(pic[count],10,10,pic[count].getWidth(this),
pic[count].getHeight(this),this);
}
public void mousePressed(MouseEvent e){
count=(count+1)% number;//循環逐張顯示
__________;
}
31.以下定義的類shareDataManager用於管理多個線程共享數據data。一些線程要減少data,另一些線程要增加data。由於data不可以是負值,修改data的方法對這些線程來說不僅要互斥,還要同步。類提供一個方法modiData()供修改data的線程調用,該方法在data修改結束後,應通知其它等待進入這個方法的線程。
class ShareDataManager{
int data=0;
________void modiData(int delta){
if(delta>=0){
data+=delta;
}else {
while(data <delta){
try{System.out.println(」發生等待!」);
wait();
}catch(InterruptedException e){ }
}
data-=delta;
}
_________;
}
ShareDataManager(int ititData){data=initData;}
}
五、程序分析題(本大題共5小題,每小題4分,共20分)
32.閱讀下列程序,請寫出該程序的輸出結果。
import java.applet.*;import java.awt.*;
class Point{
int x,y;
Point(int xx,int yy){ x=xx;y=yy;}
Point(Point p){x=p.x;y=p.y; }
void m(int dx,int dy){x+=dx;y+=dy;}
}
class Circle extends Point{
int r;
Circle(Point p, int rr){ super(p); r=rr; }
float c(){ return 3.14f*2.0f*r; }
float a(){ return 3.14f*r*r;}
}
public class sample extends Applet{
Circle yuan; Point d;
public void init() {d=new Point(2,5);yuan=new Circle(d,10);}
public void paint(Graphics g){
g.drawString(」yuan Circle」+(int)(yuan.c()*100.0)/100.0,5,20);
g.drawString(」yuan Area」+(int)(yuan.a()*100.0)/100.0,5,40);
}
}
33.閱讀下列程序,請寫出該程序的功能。
import java. util.*;
public class Class1{
public static void main(Srting args[]){
Date date1=new Date();
System. out. println (datel);
String t=datel.toString();
int endPos=t.indexOf(『C』);
t=t.substring(11,endPos);
System. out println(t);
}
}
34.閱讀下列程序,請寫出該程序的功能。
import java.applet.*;import javax.swing.*;import java.awt.event.*;
public class Class l extends Applet implements ActionListener{
JTextField text1,text2;
public void init(){
text1=new JTextField(10); text2=new JTextField(10);
setSize(200,100); add(text1); add(text2);
text1.addActionListener(this);
}
public void actionPerformed(Action Event e){
long n;
if(e.getSource()==text1){
n=Long.parseLong(text1.getText());
text2.setText(String.valueOf(n*n));
}
}
}
35.閱讀以下程序,請寫出該程序的功能。
import javax.swing.*; import java.awt.*;import java.awt.event.*;
class MyScrollBar extends JscrollBar{
public MyScrollBar(int init, int len, int low, int high){
super(JScrollBar. HORIZONTAL, init,len,low,high);
}
}
class MyWindow extends JFrame implements AdjustmentListener{
private JTextField text;
MyWindow(String s){
super(s);
MyScrollBar myBar=new MyScrollBar(10,10,0,255);
Container con=this. getContentPane();
con. setLayout(new GridLayout(2,1));
this. setSize(200,100);
this. setLocation(100,100);
myBar.addAdjustmentListener(this);
text=new JTextField(」」,20);
con. add(text);con.add(myBar);
this.setVisible(true);
}
public void adjustmentValueChanged(AdjustmentEvent e){
MyScrollBar myBar=(MyScrollBar)e.getAdjustable();
text.setText(」」+myBar.getValue());
}
}
public class Class1{
public static void main(String[]args){
MyWindow myWindow=new MyWindow(」text5_4」);
}
}
36.小應用程序創建一個線程。例子使用容器類方法getGraphics()獲得Graphics對象,給線程作為畫筆使用。請寫出該程序中這個線程的工作內容。
import java.applet.*;import java.awt.*;
public class Class1 extends java.applet.Applet implements Runnable{
Thread redBall;Graphics redPen;
int rx=0,ry=0;
public void init(){
setSize(250,200);
redBall =new Thread(this);
redPen=getGraphics();
redPen. setColor(Color.red);
setBackground(Color.gray);
}
public void start(){ redBall.start(); }
public void run(){
while(true){
if(Thread.currentThread()==redBall){
rx=(int)(80*Math.random());
ry=(int)(80*Math.random());
red Pen.setColor(Color.red);
red Pen.fillOval(100+rx,100+ry,10,10);
try{redBall.sleep(500);}
catch(InterruptedException e){}
redPen.setColor(Color.gray);
redPen.fillOval(100+rx,100+ry,10,10);
}
}
}
}
六、程序設計題(本大題共2小題,每小題6分,共12分)
37.編寫一個方法halfArray(),要求該方法有一個元素類型為int的數組參數,方法返回一個新數組,新數組的長度與參數數組的長度相同,而新數組元素的值是參數數組各元素的一半。
38.一個Java小應用程序,界面有三個文本框和兩個按鈕,前兩個文本框用於輸入整數,第三個文本框用於輸出結果。兩個按鈕分別表示加和減運算。當前兩個文本框輸入整數後,點擊相應按鈕,程序就將計算結果輸出在第三個文本框中。以下是程序的大部分,其中監視按鈕事件的方法未給出,試編寫處理按鈕事件的方法。
註:這里是給定部分的程序,你要編寫的是actionPerformed(ActionEvent e)方法。
import java.applet.*;import javax.swing.*;
import java.awt.*; import java.awt.event.*;
class Panel1 extends JPanel{
JTextField text1, text2, text3;JButton addButton,subButton;
Panel1(){
text1=new JTextField(10);text2=new JTextField(10);
text3=new JTextField(10);setLayout(new GridLayout(5,1));
addButton=new JButton(」加」);subButton=new JButton(」減」);
add(text1); add(text2);
add(text3); add(addButton); add(subButton);
}
}
public class Classl extends Applet implements ActionListener{
Pane1 panel;
public void init(){
setSize(100,200); panel=new Panel1();add(panel);
(panel.addButton).addActionListener(this);
(panel.subButton). addActionListener(this);
}
public void actionPerformed(ActionEvent e){