熟練掌握java常用API,是我們的基本要求。
一、集合框架(從容器看問題,往容器的槽裏面存放對象的引用):
1、Collection:容器的每一個槽只能存放一個元素
1)Set: 容器中的元素=對象引用,所以引用不能重複
①HashSet
②TreeSet
③LinkedHashSet
2)List:容器中元素=對象引用+序號,所以引用可以重複,
①LinkedList:
②ArrayList:
3)Quene:容器只有一個進口和一個出口,就像一根水管一樣
2、Map:容器的每個槽裏面可以放兩個對象引用,他們形成映射的關係
①HashMap:
②TreeMap
③LinkedHashMap
3、工具類:
①Collections
②Arrays
③Iterator
④Comparable
⑤Comparator
二、IO系統(從流的角度看問題:輸入流->內存->輸出流,內存與外 設之間數據的交互)
1、字符流:基於字節的包裝而成
①字符輸入流:Reader 外設的數據流向內存,字符管道
②字符輸出流:Writer 內存的數據流向外設,字符管道
2、字節流:
①字節輸入流:InputStream 外設流向內存的字節管道
②字節輸出流:OutputStream 內存流向外設的字節管道
3、文件和目錄的抽象:
File:映射硬盤上面的一個文件或者目錄,用這個對象
來間接操作硬盤上面的文件
4、基於以上流的包裝:
①FileInputStream/FileOutputStream
FileReader/FileWriter:增加文件操作
②BufferedReader/BufferedWriter
BufferedInputStream/BufferedOutputStream
:增加緩存功能
③Object**:操作對象
④Data***:操作基本數據類型和類類型
⑤Piped***:連接多個流
⑥。。。
流像一個通道,根據不同的需要,有不同的樣式,如水管、
煤氣管、電線、網線(光纖、銅纜、雙絞線)、水泥路、鐵路、海道、
空道、電磁波……都是將對象由一個地方傳導到另一個地方,好像就是物質運動的介質和形式的一個抽象。
三、GUI設計(與用戶打交道的臉面,臉面不做好,何以爲人?)
1、組件:臉面上面的一個個功能小模塊
①awt組件:與機器平臺相關的組件
②Swing組件:獨立於平臺的組件,推薦使用
③swt組件:開源的界面組件、與Swing類似
2、組件佈局:在臉面上面怎麼擺弄這些組件
3、事件機制:爲組件模塊添加動態行爲
四、數據庫:
1、基本的SQL語句掌握
2、建庫、連接數據庫、編程
3、編程:①加載驅動
②連接數據庫
③執行SQL
④讀寫數據:對數據操作
⑤關閉連接,釋放資源
五、網絡:java網絡編程只涉及到應用層和傳輸層
1、傳輸層:
1)TCP協議:像銀行開的傳輸專線一樣,相對來說可靠和穩定。
①Socket:連接遠程主機、發送數據、
接收數據、關閉連接
②ServerSocket:綁定端口、監聽入站數據、
在端口上面接收客戶端連接
2)UDP協議:像我們普通的家庭寬帶一樣,不穩定也不可靠。
①DatagramPacket:發送數據和接收數據兩種
②DatagramSockek:自尋址套接字,分客戶機套接 字和服務器套接字
3)Port:端口 與進程關聯。
2、應用層:
1)URL: 統一資源定位器,表示Internet上的某一資源
protocol://resourceName
①傳輸協議名:http、ftp、gopher、file
②資源名:資源的完整路徑名,主機+端口號+文件名
2)URLConnection
3、通信模型:
①進程A——Socket<——> Socket——進程B
②套接字是兩個通信進程之間的橋樑,所以要熟練掌握Socket的使用
六、多線程:
1、多線程是什麼:進程被分割爲多個執行流,這些不同的執行流稱之爲多線程。如果把一個企業稱爲一個進程,那麼這個企業裏面的每一個員工就是一個線程,每一個員工按照自己的方式爲企業盈利。多線程從宏觀上面看是並行的,而從微觀實際(cpu的執行)看是串行的。
2、兩種創建線程的方式:
①繼承Thread,並覆蓋run()
②實現Runnable接口:靈活
3、線程的生命週期:
①新生:線程被創建出來了,
②就緒:調用了start方法
③運行:線程被cpu執行中
④死亡:cpu將線程執行完
⑤阻塞:線程沒有被分配CPU時間,無法執行,一直等待
4、線程的優先級:等級越高,越容易被CPU執行
5、線程同步:對共享資源的獨佔
七、XML操作
1:XML是什麼:可擴展標記語言,與HTML類似
①文檔聲明:
②元素
③屬性
④註釋
⑤CDATA區、特殊字符
⑥處理指令
2、XML約束:
①XML DTD
②XML Schema
3、XML解析:增刪改查
1)dom:文檔對象模型,將整個當成一個樹狀結構的對象,
①耗內存
②因爲都放內存裏面, 處理的速度就快了
③適用於小文檔增刪改查
2)sax:Simple API for XML,事實標準,讀一行解析一行
①頻繁與外設交互,速度慢
②節約內存
③適用於大文檔的讀操作
4、常用XML解析包:
①JaxP包:包含在JavaSE裏面
②dom4J包:性能優異
③Xpath