final 許可權 內部類 引用型別

2021-09-24 09:39:42 字數 1211 閱讀 2717

final:不可改變。可以用於修飾類、方法和變數。

final運用方面:

1、修飾變數

基本型別的區域性變數,被final修飾後,只能賦值一次,不能再更改。

2、區域性變數–引用型別

引用型別的區域性變數,被final修飾後,只能指向乙個物件,位址不能再更改。但是不影響物件內部的成員變數值的修改。

3、成員變數

成員變數涉及到初始化的問題,初始化方式有兩種,只能二選一:

顯示初始化;

public class user

構造方法初始化;

public class user

}注意:被final修飾的常量名稱,一般都有書寫規範,所有字母都大寫。

final修飾類的時候該類不能被繼承。final修飾方法的時候該方法不能被重寫

許可權大小

public>protected>default>private

public

protected

default(空的)

private

同一類中√√

√√同一包中(子類和無關類)√√

√不同包的子類√√

不同包中的無關類

√注意:不加修飾符其訪問能力與default修飾符相同

內部類:將乙個類a定義在另乙個類b裡面,裡面的那個類a就稱為內部類,b則稱為外部類。

成員內部類:定義在類中方法外的類。

格式**:

person p = new person(); // 建立外部類物件

heart heart = p.new heart(); // 建立內部類物件

匿名內部類:

**格式:

new 父類名或者介面名()

};

1.class作為成員變數

類作為成員變數時,對它進行賦值的操作,實際上,是賦給它該類的乙個物件。

2.inte***ce作為成員變數

我們使用乙個介面,作為成員變數,以便隨時更換技能,這樣的設計更為靈活,增強了程式的擴充套件性。

介面作為成員變數時,對它進行賦值的操作,實際上,是賦給它該介面的乙個子類物件。

3.inte***ce作為方法引數和返回值型別

介面作為引數時,傳遞它的子類物件。

介面作為返回值型別時,返回它的子類物件。

final 許可權 內部類

代表最終不可變的。用法 1 用來修飾乙個類 不能有子類,所以其中所有的方法都不嗯呢該被覆蓋重寫。2 用來修飾乙個方法 方法不能被覆蓋重寫。3 用來修飾乙個區域性變數 variable 一次賦值,終生不變。4 用來修飾乙個成員變數 一次賦值,終生不變。沒有預設值需要手動賦值。final修飾的類又叫 太...

11 final 許可權 內部類

final類不能有子類,但可以有父類 final類不能有abstract方法 修飾方法時,final和abstract不能同時出現 fina修飾變數時 內部類分為 成員內部類 區域性內部類。包含內部類的類在被編譯時會生成兩個位元組碼檔案 外部類名 內部類名.calss 和 外部類名.calss 內部...

Day16 final 許可權 內部類

許可權修飾符 編寫 時,如果沒有特殊的考慮,建議這樣使用許可權 內部類 內用外,隨意訪問 外用內,需要內部類物件。成員內部類 定義在類中方法外的類。區域性內部類 定義在類中的方法內。匿名內部類 實現類或子類只需使用一次,就可以使用 匿名內部類 內部類public class innerclass c...