1. 程式人生 > >JavaSE的複習內容總結

JavaSE的複習內容總結

一 java基礎1
1.資料型別:基本資料型別和複合(引用)資料型別
它們分別佔用的空間大小和預設值是多少?


2.型別轉換
低優先順序->高優先順序轉換  自動轉   高優先順序的轉低優先順序的  強轉


3.運算子
算術運算子 關係運算符  賦值運算子  布林邏輯運算子  三目運算子  位運算子


6&4=? 位運算子需要轉換成二進位制進行運算


4.輸入的方式
Scanner    BufferedReader   通過System.in.read(buf);


二.java基礎2
1.流程控制語句
選擇條件語句:if  else語句   switch語句


迴圈結構語句:do while語句  while語句  for語句


跳轉語句:break  continue


2.陣列:堆記憶體中一塊連續的儲存空間
陣列的初始化?定義格式?


二維陣列:裡面的每一個元素都是一個一維陣列


三.java基礎3
方法的定義?方法的作用
有返回型別有引數
無返回型別無引數
有返回型別無引數
無返回型別有引數


方法的兩個特性:過載和重寫
過載:同一個類中,只看同名方法的引數列表
重寫:子類繼承父類,要求方法要一模一樣


String類
StringBuilder:執行緒不安全的可變字串
StringBuffer:執行緒安全的可變字串


可變引數


簡易for迴圈for each迴圈


四.面向物件1
類:對現實世界中具體事物的抽象描述
物件:具體事物實實存在的個體


面向物件的三大特徵:1.封裝  2.繼承  3.多型


構造方法是什麼,格式
構造方法的作用:初始化物件


static關鍵字:隨著類的載入而載入,依賴於類,不依賴物件,被所有物件共享


五.繼承和多型
繼承的定義?
子類繼承父類,父類中所有的屬性和方法都被繼承過來
當子類中有與父類同名的屬性時,父類屬性被隱藏,呼叫要用到關鍵字super
當子類中有與父類同名的函式時,父類方法被覆蓋,呼叫要用到關鍵字super
構造方法能被繼承嗎?   為什麼不能被繼承


多型的定義?不同物件收到同一訊息所產生完全不同的響應
多型實現的必要條件
1.繼承
2.重寫
3.父類宣告子類物件


多型實現的機制:動態繫結機制


屬性(靜態方法)看宣告,方法看物件


值傳遞和引用傳遞的區別?


六.初始化及清理
垃圾回收器方法
成員屬性的初始化順序:
1.先聲明後賦值:先按照宣告的順序附一個預設值,再執行等號後面的賦值
2.先屬性後方法:先初始化屬性,再執行構造方法初始化
3.先靜態後非靜態:先初始化靜態屬性,再初始化非靜態屬性
4.先父類後子類:先初始化父類屬性,再初始化子類屬性
final關鍵字,修飾的屬性兩種初始化方法


七.介面和內部類
什麼是介面?
介面的作用?提高程式碼的擴充套件性,彌補java中單繼承的缺陷
介面中的方法都是public abstract 返回型別 方法名稱(引數列表);
介面中的屬性都是public static final 資料型別 變數名稱=值;
介面不能直接建立物件,必須寫一個類去實現該介面重寫所有的抽象方法
介面與介面之間可以多繼承(也有例外),介面不是Object的子類
介面也是一種中資料型別,也可以使用多型


抽象類
抽象類有抽象方法,不能直接建立物件,因為類中有抽象方法,呼叫沒有意義
抽象類中除了有抽象方法以外,其他的與普通類一樣
抽象類是Object的子類,抽象類可以實現介面
特殊的:抽象類也可以沒有抽象方法,這樣做的目的僅僅就是不讓直接建立該類物件


內部類:對外隱藏細節
非靜態內部類:非靜態內部類物件依賴於外部類物件
靜態內部類
區域性內部類
匿名內部類:主要是針對那些不能直接建立物件的抽象類和介面的


八.異常處理
錯誤(Error)與異常(Exception)的區別?
執行期異常與編譯期異常的區別?
異常處理的兩種方式:1.try catch  2 throws throws與throw的區別
常見異常記住:空指標的異常  索引越界異常  NumberFormatException 


九.執行時期型別判定rtti
Class物件是什麼?對類執行時期的說明
由jvm自動建立並存儲在同名的.class檔案中,每個類有且僅有一個Class物件
Class物件時反射機制的源頭
三種獲取Class物件的方式:
1.getClass   一般用於型別檢查
2.Class.forName()  一般用於載入某個類
3..class  一般用於引數的傳遞


反射機制的作用?分析類的結構
通過反射如何建立類的物件?
通過反射如果獲得類中的屬性?
通過反射如何獲得類中的方法?


型別檢查:關鍵字instanceof 是一個運算子,運算的結果是布林型別的值
Animal d=new Dog();
if(d instanceof Dog)


十.集合類庫
Collection:
List:有序的,可以重複的列表
ArrayList:底層的資料結構是動態的物件陣列,不同步的
LinkedList:底層資料結構是連結串列結構,不同步的
Vector:同步向量,操作與ArrayList基本一樣
Stack:堆疊  Vector的子類  LIFO
Set:無序的,不可以重複的集合
HashSet:由雜湊表支援,判斷元素重複的標準hashCode和
equals(Object obj)
TreeSet:二叉樹結構,要求存放的元素是同一種類型
並且具有一個自然順序實現Comparable介面,重寫CompareTo方法
判斷元素重複的方法CompareTo返回0則是重複的方法
Map:具有對映關係的鍵值對,鍵對映到值,鍵不能重複,值能重複
HashMap:雜湊表支援的,鍵和值都能為null
Hashtable:鍵和值都不能為null
TreeMap:鍵不能為null,值能為null




Collections:集合類Collection的工具類
比較器:Comparator   compare(Object o1,Object o2)


泛型


十一:jdbc
是一個標準,專門用來建立於指定資料庫連線
操作資料庫的步驟都是固定的


jdbc四大物件
1.DriverManager:管理一組jdbc驅動服務
2.Connection:建立與指定資料庫的連線,由Driver生成的
3.Statement:傳送sql語句到資料庫中執行,由Connection生成的
4.ResultSet:獲得查詢的結果集,由Statement生成


操作資料庫的四個步驟
1.載入資料庫驅動
2.建立資料庫連線
3.傳送sql語句去資料庫中執行
4.關閉資料庫


十二.IO流
位元組流抽象基類:
InputStream   OutputStream
FileInputStreamFileOutputStream
BufferedInputStreamBufferedOutputStream
DataInputStreamDataOutputStream
ObjectInputStreamObjectOutputStream
PrintStream


字元流抽象基類
Reader     Writer
FileReader   FileWriter
BufferedReader  BufferedWriter
InputStreamReader OutputStreamWriter
PrintWriter


十三.xml
xml:可擴充套件標記語言
xml的作用?xml的格式?
解析xml檔案的方式:dom和dom4j


十四.多執行緒
多執行緒的概念?多個可以同時執行的程式碼段
建立執行緒的兩種方式:1.繼承自Thread類  2.實現Runnable介面
執行緒中的方法,sleep  join等等
併發執行緒的執行緒安全問題:當多個執行緒共享同一資源容易造成資料紊亂,也就是執行緒安全問題
解決執行緒安全問題使用同步,給物件加鎖
同步程式碼塊和同步方法
死鎖是如何產生的?多個執行緒之間相互等待容易產生死鎖
執行緒的生命週期:新建 就緒 執行 阻塞 死亡
執行緒之間的相互通訊
wait和notify方法,都是Object類中方法,必須使用在同步中


十五.swing
awt:重量級元件
swing的元件的使用(簡單瞭解)


十六.佈局事件
三種佈局(簡單瞭解)
事件監聽器 ActionListener
滑鼠監聽器 MouseListener
鍵盤監聽器 KeyListener


十七.網路程式設計
也叫基於Socket程式設計
UDP協議和Tcp協議
udp:DatagramSocket和DatagramPacket
tcp:Socket和ServerSocket