1. 程式人生 > >java基礎知識點回顧

java基礎知識點回顧

rup override text 使用 public fault 進程同步 訪問 都是

java基礎數據類型

bollean 1

char 2

byte 1, short 2 , int 4, long 8

float 4, double 8

-----------------------------------------------------

java 四大特征

抽象,封裝,繼承,多態

----------------------------------------------------

override 和 overload

override(重寫):子類重寫父類方法體,方法名,返回值,參數不變。

overload(重載):方法名相同,參數不同(類型,數量)。

-----------------------------------------------------

抽象類 和 接口

抽象類:類中含有(abstract)標記的抽象方法,必須是(abstract)標記的抽象類,但抽象類中可以沒有抽象方法。

接口:由抽象方法和常量的集合。接口中都是public方法和final常量。

-----------------------------------------------------

繼承(extends) 和 實現(implements)

繼承:子類繼承父類可以獲得父類的 非私有(private)屬性和方法,可以重寫父類的成員方法;

    構造方法不能繼承,若想調用父類的構造方法可以 super(),有參數可以添加參數。

實現:子類必須重寫接口的所有方法。

------------------------------------------------------

static靜態代碼塊 和 static 關鍵字

static靜態代碼塊: 當一個類被加載的時候,首先加載靜態代碼塊。一個類的靜態代碼塊只能使用一次。

static 關鍵字:被 static 修飾的變量是全局變量,每個對象都可以使用同一個;

      static 修飾的方法可以用 類名.方法名調用,static 方法可以調用成員方法,成員方法不能調用 static 方法,static 方法只能使用 static 標記的全局變量。

--------------------------------------------------------

修飾符

本類 同一個包 子類 其他包
public Y Y Y Y
protect Y Y Y
default Y Y
private Y

--------------------------------------------------------

String 和 StringBuffer

String:不可變的字符串。

StringBuffer:字符串是可變的。

-------------------------------------------------------

數組

數組:同類型的數據存放在一起的組合,數組長度固定不可更改。

-------------------------------------------------------

集合

常用:list,set,map

list:有序排列可以重復

set:無序排列不可重復,只能一個null,(排序方式Hash表)

map:鍵值對組合,鍵不可重復,值可以重復,(Hash表排序)

--------------------------------------------------------

Thread 類 和 Runnable 接口

Runable 接口:Runnable 只提供一個方法 run()。

Thread 類:Thread 類繼承 Runnable 接口。

線程開啟:使用 對象.start()方法開啟線程,線程開啟後調用run()方法。

-------------------------------------------------------

synchronize 進程同步鎖

進程同步 : 當 synchronize 標記一個方法或者代碼塊時,次方法或代碼塊在同一時間內只能有一個線程訪問,只有當前線程釋放鎖後其他線程才能訪問。

-------------------------------------------------------

yield() 和 join()

yield():暫停當前線程轉而執行其他線程。

join():t.join()暫停當前線程轉而執行 t 線程,當 t 結束後繼續執行。

-------------------------------------------------------

wait() 和 notify() ,notifyAll() 和 interrupt()

wait():使當前線程轉為等待狀態,等待狀態會釋放進程同步鎖,等待狀態後可以被notify()或者 notifyAll()喚醒,喚醒後從等待出繼續運行。

notify():隨機喚醒一個同鎖的等待進程。

notifyAll():隨機喚醒所有同鎖的等待進程。

interrupt():線程.interrupt() 將線程從 sleep(),wait(),join()狀態轉換成中斷狀態並拋出異常。

------------------------------------------------------

內部類

靜態內部類:創建在類中的類,static 修飾,只能調用外圍類的靜態屬性和方法。

成員內部類:創建在類中的類,不能使用 static修飾符。

匿名內部類:在方法中直接創建一個對象。

局部內部類:創建在方法體中的類,沒有修飾符,只能訪問 final 修飾的常量。

-----------------------------------------------------

java基礎知識點回顧