包,修飾符,內部類

2021-10-16 12:23:39 字數 3018 閱讀 9809

目錄

包的特點:

許可權修飾符

內部類成員內部類

區域性內部類

匿名內部類

注意:*代表的是萬用字元,表示匯入這個包下的所有類,但沒有匯入子包下的類

public

protected

default

private

同一類中√√

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

√不同包的子類√√

不同包中的無關類

√修飾符總結

修飾符 類

成員變數

成員方法

構造方法

public y

y yy

default y

y yy

protected y

y yprivate y

y yabstract y

ystatic y

yfinal y

y y

常見規則:

package ceshi;

/** * @author lzy

* @creat 2021-01-29-17:00

*/public class innerdemo

}class outer

//構造成員內部類 和成員變數以及成員方法位置一樣

成員內部類修飾符可以使用的修飾符:private,public,procted,final,static,abstract

呼叫內部類方法時:

*  可以使用許可權修飾符修飾成員內部類,但是如果使用私有來修飾,則無法在其他類中訪問

*  可以使用

static

修飾成員內部類,不用再建立外部類的物件了  (進一步用static修飾內部方法時,那麼就可以直接通過全名呼叫方法了)

*  可以使用

abstract,final

修飾成員內部類    (不常用,因為本身沒有使用價值)

使用場景不多

package ceshi;

/** * @author lzy

* @creat 2021-01-29-20:46

*/public class innerdemo3

}class outer3

}inner3 i = new inner3();

i.function();//必須在內部類宣告後再建立物件呼叫方法}}

匿名內部類:通過建立實現介面的子類物件完成*/

public class innerdemo4

}inte***ce inner

class outer4

}.function();//只能呼叫一次}}

匿名內部類:建立匿名內部類物件賦值給父介面變數,然後通過該變數呼叫方法,主方法再呼叫外部類*/

public class innerdemo4

}inte***ce inner

class outer4

};i.function();//作為成員變數可多次呼叫方法

使用場景作為引數進行傳遞 

(意味著使用乙個新的物件實現介面時不用再新建乙個類,可以直接在匿名內部類中定義)

匿名內部類適合建立那種只需要使用一次的類,也就是說建立乙個匿名內部類,只需要用一次即可。

package lei;

inte***ce student

package lei;

/** * @author lzy

* @creat 2021-01-31-14:09

通過介面,建立實現該介面的物件,然後重寫了這個介面中的方法*/

public class innerdemo5

public static void main(string args) });

}}

Java中包 導包 修飾符和內部類

1 包,就是資料夾 a 包的作用,區分同名的類。對類進行分類管理。b 包的定義,package 包名。多級包用.分開。c package語句必須在檔案中第一條有效語句,如果沒有package預設為無包名。2 導包 a 我們多次使用乙個帶包的類,很麻煩,這個時候需要我們導包。b 格式,import 包...

修飾符 內部類 String

修飾符 狀態修飾符 final 最終的,無法更改的,一般用在類上或者方法上或者常量的定義上 常量的定義格式 public static final 資料型別 變數名 初始化值 凡是被final修飾的類都無法被繼承,被fianl修飾非方法無法被重寫,被final修飾的變數是常量 如果該變數是基本資料型...

內部類,匿名內部類,許可權修飾符

二.匿名內部類 三.許可權修飾符 public class a 格式 外部類物件.內部類物件 物件名 new 外部類物件.new 內部類物件 不使用匿名內部類呼叫抽象物件中的方法 建立子類,繼承父類 重寫方法 建立子類物件 呼叫重寫方法 使用匿名內部類 無需建立子類直接new父類即可 格式一 new...