1. 程式人生 > 其它 >java基礎知識筆記

java基礎知識筆記

方法的定義:

Java的方法類似於其他語言的函式,是一段用來完成特定功能的程式碼片段,一般情況下,定義一個方法包含以下語法:

修飾符 返回值型別 方法名(引數型別 引數名){

方法體

return 返回值;

}

方法的過載規則:

  1. 方法的名稱必須相同。

  2. 引數列表必須不同

  3. 方法的返回型別可以相同也可以不相同

  4. 僅僅返回型別不同不足以成為方法的過載

遞迴:

A方法呼叫A方法!就是自己呼叫自己

結構:

遞迴頭:什麼時候不呼叫自身方法。如果沒有頭,將進入死迴圈,以至於棧記憶體溢位。

遞迴體:什麼時候需要呼叫自身方法。

加:add 減:subtract 乘:multiply 除:division

陣列:

  1. 陣列是相同資料型別的有序集合

  2. 陣列也是物件。陣列元素相當於物件的成員變數

  3. 陣列長度一旦確定,就不可改變。如果越界,則報錯:ArrayIndexOutofBounds

成員變數與區域性變數的區別:

1、在類中的位置不同

成員變數:在類中方法外面

區域性變數:在方法或者程式碼塊中,或者方法的宣告上(即在引數列表中)

2、在記憶體中的位置不同,可以看看Java程式記憶體的簡單分析

成員變數:在堆中(方法區中的靜態區)

區域性變數:在棧中

3、生命週期不同

成員變數:隨著物件的建立而存在,隨著物件的消失而消失

區域性變數:隨著方法的呼叫或者程式碼塊的執行而存在,隨著方法的呼叫完畢或者程式碼塊的執行完畢而消失

4、初始值

成員變數:有預設初始值

區域性變數:沒有預設初始值,使用之前需要賦值,否則編譯器會報錯(The local variable xxx may not have been initialized)

Arrays工具類:

常用功能:

  1. 給陣列賦值:fill方法。

  2. 對陣列排序:sort方法,按升序排列。

  3. 比較陣列:equals方法,比較陣列中元素值是否相等。

  4. 查詢陣列元素:binarySearch方法能對排序好的陣列進行二分法查詢操作。

面向物件

面向物件程式設計(Object-Oriented Programming,OOP)

面向物件程式設計的本質就是:以類的方式組織程式碼,以物件的組織(封裝)資料。

類中的構造器也稱為構造方法,是在進行建立物件的時候必須要呼叫的。並且構造器有以下兩個特點:

  1. 必須和類的名稱相同

  2. 必須沒有返回型別,也不能寫void

封裝 :

程式設計追求”高內聚,低耦合“

高內聚就是類的內部資料操作細節自己完成,不允許外部干涉。

低耦合:僅暴露少量的方法給外部使用。

屬性私有,get/set