Java自學筆記(十二)

2021-08-17 06:40:39 字數 1711 閱讀 3105

final:可以用來修飾類,類的成員,以及區域性變數

注意:final修飾的類不能被繼承,但可以繼承其他類,俗稱「太監類」?

final修飾的方法不可以被重寫(覆蓋),如果父類中沒有被final修飾方法,子類重寫之後可以補充final;

final修飾的變數其實是常量,不能再次賦值。可以再構造方法中給final賦值,只要在建立物件前賦值,還是可以的。

final fu fu = new fu();//記憶體位址不變

class test

}

static: 靜態修飾符,共享資料,不歸某物件特有,類似一群孩子都在某所學校(共享的資料),但是每個孩子名字都不一樣(物件特有資料),記憶體中,靜態是優於非靜態方式的存在~

注意:被static修飾的成員可以直接使用類名直接訪問(類名.靜態成員變數名稱|類名.靜態成員方法名(引數列表))

不能使用this/super

靜態方法只能呼叫靜態成員變數,

tip:定義靜態常量,開發通過格式  public static final 資料型別 變數名 = 值;變數名全部大寫~~對於介面,也可以介面名加靜態變數名

inte***ce jiekou 

jiekou.zmn;

person a = new animal(); //實名物件

new animal();//匿名物件

需要注意的:匿名物件實名的話,只能使用一次;

匿名物件可以當作方法接收的引數和方法的返回值;

其它:內部類(成員內部類||區域性內部類||)

顧名思義,所在位置不同;(**轉)

public class outer 

}}

定義類

class party

}//建立內部類物件,呼叫puff方法

new ball().puff();

}} 訪問內部類

public static void main(string args)

匿名內部類(**轉)

public inte***ce smoking 

/** 實現類,實現介面 重寫介面抽象方法,建立實現類物件

* class *** implements smoking

* }

* *** x = new ***();

* x.smoking();

* smoking s = new ***();

* s.smoking();

* * 匿名內部類,簡化問題: 定義實現類,重寫方法,建立實現類物件,合為一步完成

*/測試類:

public class test ;

* 從 new開始,到分號結束

* 建立了介面的實現類的物件

*/new smoking()

}.smoking();

} }

protected呼叫不同包的子類,必須在子類寫。

構造**塊和靜態**塊,均定義在類中方法之外。

使用格式{}    static{}      靜態**塊優先執行,但是只執行一次,之後執行構造**塊,最後執行構造方法

abstract 不能與private/static/final同時使用

Java自學筆記(十)

要用到多型,一定是已經有子父類關係或者類實現介面等前提 格式 父類型別 變數名稱 new 子型別行 變數名稱.方法 具體體現 父子類,抽象類,介面 class fu class zi extends fu 類的多型使用 fu f new zi 這其實就是向上轉型 abstract class fu ...

JAVA自學筆記一

二 表示式 基本語句 1.算數運算子 加減乘除 取餘 運算子,均為二目運算子 結合方向自左向右 算術運算的精度由高到低排列 byte short char int long float double 當算術表示式運算過程中如果表示式中有不等的精度,結果均按照高精度排列 2.自增自減運算子 自增自減運...

Java自學抽象類 自學筆記

抽象類是指在類的宣告前加上abstract關鍵字修飾的類。抽象類可以包含常規類能夠包含的任何東西,這包括構造方法,因為子類可能需要呼叫這種構造方法。抽象類可以包含抽象方法,即方法宣告前用abstract修飾的。抽象方法只有方法的宣告沒有方法體 方法實現 非抽象的方法可以有方法體。抽象方法將在子類中被...