2018年4月第一週學習筆記——JAVA面向對象初步

1. 類的基本定義形式

Java中,最簡單的類定義形式爲:

class ClassName

{

    fields……

    constructors……

    methods……

}

一般類名的首字母要大寫。

2. 訪問修飾符——public和private

在一個源文件中,只能有一個public類,並且文件名必須與public類名字相同,一般將包含main方法的類聲明爲public類。一般將數據域設置爲私有,如果要訪問或者更改,可以設置相應的公有的訪問器或是更改器方法。

相同類的不同對象實例可以彼此訪問對方的私有域。

3. 靜態域與靜態方法——static修飾符

其實稱之爲“類域”和“類方法”更好理解,因爲靜態域與靜態方法通常屬於一個類而不屬於該類的任何實例,調用時也用類名調用(典型的如Math類)。

(1)靜態變量

一般用private static聲明,每個類中只有一個這樣的域,而每個對象都有一份拷貝。

(2)靜態常量

少有的聲明爲public的數據域(一般用public static final聲明),因爲是常量,不用擔心封裝性被破壞,可以通過類直接訪問調用(典型如Math.PI、System.out等等)。

(3)靜態方法

靜態方法不能向對象施加操作,換言之,即沒有隱式參數,不過可以訪問和操作該類的靜態變量。此外,main方法也是靜態方法,工廠方法(factory method)也是靜態方法,常用於生產不同風格的格式化對象,或者需要構造一個該類的子類的對象時,可以使用工廠方法。

4. 構造器及其重載

構造器的名字必須與類相同。同時,構造器可以重載。

(1)一般設置一個無參數的構造器,用於設置默認值。

(2)用this調用同一個類的另一個構造器(該方法十分有用,對於一個具有很多構造器的類,公共部分的代碼只需編寫一份,再用this關鍵字調用即可)。

(3)其他初始化方法(一般在構造器之前執行):

①顯式初始化:在定義一個數據域時,直接將一個值賦值給數據域(有時候也可以調用一個方法進行初始化)。

②初始化塊。

5. 包(package)

包用於組織類,使用包的主要原因之一是確保類名的唯一性,例如util包和sql包中的Date類被認爲是不同的類。

(1)包的導入——import語句

import語句可以導入一個特定的類或者整個包,也可以使用*號來導入整個包,例如要導入LocalDate類,可以使用語句

import java.time.LocalDate;

也可以使用語句

import java.time.*;

靜態導入:可以使用import static來導入某個類的特定或所有靜態域、靜態方法。

(2)將類放入包中——package語句

package語句位於整個源文件的最上方,若不顯式地聲明,則這個源文件中的類會被放置在默認包中。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章