目錄
包的特點:
許可權修飾符
內部類成員內部類
區域性內部類
匿名內部類
注意:*代表的是萬用字元,表示匯入這個包下的所有類,但沒有匯入子包下的類 publicprotected
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...