1、冒泡排序與簡單插入排序與簡單選擇排序在最壞情況下均需要比較n(n-1)/2次,而堆排序在最壞情況下需要比較的次數是nlog2^n 。情況下比較次數最少的是堆排序;有序線性表的長度爲n,則有序線性表中二分查找,最壞情況下的比較數爲log2^n
2、教務管理系統爲應用軟件
3、軟件測試的目的是爲了發現錯誤而執行程序的過程,並不涉及改正錯誤
程序調試的任務是診斷和改正程序的錯誤;軟件測試是儘可能的發現軟件中的錯誤
4、數據庫應用系統的核心問題是數據庫的設計
5、E-R圖轉換爲關係模式,實體和聯繫都可以表示爲
6、Java的基本數據類型不包括String
7、數組是長度固定的線性表
8、帶鏈的隊列就是用一個單鏈表示的隊列。列隊空時,對指針和尾針都爲NULL
9、軟件的生命週期:軟件產品提出、實現、使用維護到停止使用退役的過程
10、白盒測試法:邏輯測試法(語句覆蓋、路徑覆蓋、判定覆蓋、條件-覆蓋、判斷覆蓋)、基本路徑
基本路徑屬於動態測試
11、關係的實體完整性要求關係不能爲空的屬性時:主鍵屬性
12、數據定義功能:負責數據的模式定義數據的物理存取構建
數據操作縱功能:負責數據的操作,包括查詢與增、刪、改等操作
數據控制功能:負責數據完整性、安全性的定義與檢查以及併發控制、故障恢復等功能
13、Java中實現多態有三個必要條件:繼承、重寫、向上轉型。接口中多態可以實現多重繼承,方法的重載不屬於多態機制。重載屬於Java多態機制
15、一元運算符由:“sizeof”,"+" 、“-”、“!”、“++”、“--”、“~”
16、abstract類只能用來派生子類,不能用來創建abstract類得對象;整個類都是final修飾,就表明自己不希望從這個類繼承,或者不答應其他任何人採取這種操作;abstract希望被繼承而final不能被繼承‘abstract方法必須在抽象類中聲明,但abstract類定義可以沒有抽象方法。
17、catch中的對象類型時try中可能拋出異常或其父類,try語句後可能有多個catch,沒有try不會catch。
18、toArray()返回數組、toObject()返回object、 contains()返回Boolean值 、remove()返回Boolean值
19、FileInputStream是字節流、InputStreamReader、FilterWriter、PipedWriter都是字符流;reader和writer結尾的都是字節流,以stream結尾的是字符流。
20、DeflaterOutputStream:壓縮類的基類。對輸出的文件進行壓縮和過濾
21、Java的管道流:可以將多個線程互聯;可分爲字節管道流和字符管道流;提供了安全的線程通信
22、一個線程中的數據是具有共享性的,可以被其他線程共享
23、使線程進入阻塞狀態的方法有:sleep()和join()
24、Applet運行時不能通過Java命令運行,在web瀏覽器中運行
25、jApplet時swing窗口中的一個類,jar包爲Javax.swing
26、非線性結構可以爲空,樹都是非線性結構
27、軟件結構化分析方法工具:數據流圖(DFD)、數據字典(DD)、判定表和判定樹。
軟件詳細設計階段使用工具:PAD圖、程序流程圖、N-S圖
28、Java中的編碼規範:只能以字母,數字,下劃線,_,$組成;不能以數字開頭,不能是關鍵字或保留字
類和接口名規範:每一個字的首字母大寫,含有大小寫。
方法名規範:首字符小寫,其餘的首字母大寫,含大小寫。儘量少用下劃線。(駝峯式命名)
常量名規範:基本數據類型的常量名使用全部大寫字母、字與字之間下劃線分割。對象常量可大小混寫。
變量名規範:可大小寫混寫,首字符小寫,字間分隔的首字母大寫。不用下劃線,少用美元符號。
29、按運算符操作數的數目劃分:一元運算符:++、--、+、-、,
二元運算符:+、-、*、>
三元運算符:?
按運算功能劃分:算術運算符:+,-,*,/,%,++,--
關係運算符:>,<,>=,<=,==,!=
布爾邏輯運算符:!,&&,||
位移運算符:>>,<<,>>,&,|,^,~
賦值運算符:+=,-=,*=,/=,=
條件運算符:?
30、實例方法只能通過對象來調用
31、indexOf():指定字符返回第一一次在字符串中出現的位置。
例如:String str=“ABC”;
System.out.println(str.indeOf('A'));
輸出結果爲:0
32、調用Throwable類的printStackTrace方法訪問堆棧跟蹤
33、一個線程只能屬於一個進程,而一個進程可以有多個線程。Java僅支持單繼承,但支持多重繼承。
34、數據的存儲結構會影響算法的效率
35、軟件測試主要4個步驟:單元測試、集成測試、確認測試(驗收測試)、和系統測試
36、重載:方法名相同,參數列表和參數不同
37、在運算過程中,除數不能爲0,爲0則報ArithmeticException異常,屬於RuntimeException的子類。屬於運行異常
38、IndexOutOfBoundsException異常:越界異常信息
39、HashMap底層是用哈希表實現的,不能保證其中元素順序
40、數據過濾:是使用一個已存在的輸入流或輸出流連接創建的,並不是對數據進行篩選。
FilterOutputStream是OutputStream的子類
FilterInputStream是InputStream的子類
41、PipedInputStream和PipedInputStream分別是管道輸出和管道輸入流。它們的作用是讓多線程可以通過管道進行線程間的通訊
42、OutPutStream類中的flush()方法是強制的將緩衝區字節全部寫出
43、 mouseMoved(MouseEvent):鼠標移動產生事件
mousePressed(MouseEvent):鼠標按下產生的事件
mouseReleased(MouseEvent):鼠標按下移動到事件中產生的鼠標事件
mouseEntered(MouseEvent):鼠標進入窗口產生的鼠標事件
44、JOptionPane不能實現通用對話框。
JOptionPane.showMessageDialog():是顯示帶有OK按鈕對話框
JOptionPane.showInputDialog():是顯示輸入框
45、Java中的線程主要由:代碼、虛擬的CPU、代碼所操作的數據組成
46、suspend()方法就是將一個線程掛起(暫停),不會釋放鎖
47、對數據進行壓縮存儲會降低算法的空間複雜度。
48、如果棧底指針子指向存儲單元有一個元素,則當top=bottom時,棧中的元素個數爲1;
如果棧底指向的存儲單元中沒有元素,則當top=bottom時,棧中的元素個數爲0.
49、結構化程序設計風格強調的是程序的易讀性。
50、parseFloat()方法的作用:將字符串類型數據轉換爲Float類型數據
51、RandomAccessFile類同時實現了DataInput和DtaOutput接口
52、InputStream類中的availble()方法功能是:返回輸入流中可讀字節數
53、Container類是頁面標籤的容器,容器是封裝和跟蹤零件或更多組件對象
54、JCheckBox:處理選中事件
JComboBox:處理複選事件
JFileChooser:處理文件選擇功能
JButton:處理按鈕事件
55、setVisible(true):窗口顯示可見
56、算法原地工作:額外空間量不隨問題規模的變化而變化
57、軟件過程:把輸入轉化爲輸出的一組彼此相關的資源活動
58、數據流圖(DFD)構造規則:
1、對加工處理建立唯一、層次性編號,且每個加工處理通常要求既有輸入又有輸出
2、數據存儲之間不應有數據流
3、數據流圖的一致性。即輸入輸出,讀寫的對應。
4、父圖、子圖關係與平衡規則。子圖輸入輸出數據流與父圖中相加功的輸入數據流必須一致
59、數據庫系統共享性大,冗餘度小,但只是減少冗餘,並不是避免一切冗餘。
60、實現Set接口:HashSet、LinkedHashSet、TreeSet
61、Serializable接口主要用來處理對象劉進行序列化和反序列化,沒有抽象方法
62、Swing採用了MVC的設計模式,即:模型-視圖-控制器
63、線程中啓動線程啓用start()方法
64、共享數據的訪問權限都必須定義爲private
65、對象基本特點:
1、標識唯一性
2、分類性
3、多態性
4、封裝性
5、模塊獨立性好
66、關係模式屬於邏輯設計
67、Java類命名:每個單詞首字母大寫
14、Java命名約定:駝峯命名法:
1、變量名應該用有意義得英文單詞
2、變量名如果只有一個單詞,則所有得字母小寫
3、變量名如果由多個英文單詞組成,則從第二個單詞開始字母大寫
68、Java中繼承方式爲單繼承,一個子類只能擁有一個父類
69、substring()截取字符串中部分字符串,字符串讀取下標從0開始
70、checkedInputStream流可以計算內容校驗和類
71、由於帶鏈的棧利用的是計算機存儲空間中的所有空閒存儲結點,因此帶鏈棧的棧底指針是隨棧的操作而動態變化的。
72、完全二叉樹的性質:具有n個結點的完全二叉樹的深度爲[log2^n]+1。
例:二叉樹共256個結點,則深度爲【log2^256】+1=8+1=9
73、結構化程序設計方法原則包括:自頂向下、逐步求精、模塊化、限制使用goto語句。
74、垃圾回收調用的方法是finalize(), gc()在回收對象之前調用該方法
75、Java中往集合中添加數據用add()方法,如果一次添加多個數據批量增加則使用addAll()方法。
76、deleteOnExit() 在編寫程序刪除文件時使用,在JVM進程退出的時候刪除文件,通常刪除臨時文件
77、線程終止的情況下就會結束生命週期,轉換不了爲其他狀態。其線程運行週期:新建、可運行、運行、阻塞、可運行
78、drawString();JFram和APPlet中能夠將我們想要的內容在指定位置中顯示出來
79、抽象不屬於Java特性
80、WindowDragged不是WindowListener接口提供的方法
81、Applet要在啓動後的運行過程中在瀏覽器更行顯示,必須重寫paint()方法
82、算法的時間複雜度與運行算法時特定的輸入有關
83、線性鏈表不受存儲空間大小的限制
84、線性表的長度爲n,在最壞情況下,比較次數爲n-1算法是尋找最大項
85、支撐軟件是介於系統軟件和應用軟件之間。Studio.NET屬於支撐軟件
86、數據模型按照不同應用層次分爲:概念數據模型、邏輯數據模型、物理數據模型
87、關係數據模型三個組成部分:關係的數據結構、關係操縱、關係的數據結構
88、構造方法沒有返回值
89、對象擁有屬性行爲的實體
90、indexOf():從0開始數字符串的長度
substring():從0開始數字符串長度再減1