文章目錄
一.內部類
1,內部類概念
- 在一個類裏面還有另外一個類
2,內部類定義格式
public class A{
public class B{
}
}
3,內部類注意事項
- 內部類可以直接訪問外部類成員,外部類不能訪問內部類成員
4,使用內部類成員(瞭解)
- 需要new內部類對象,根據外部類對象new內部類對象
格式:外部類對象.內部類對象 對象名 = new 外部類對象.new 內部類對象()。
二.匿名內部類
1,使用匿名內部類的優點?
不使用匿名內部類調用抽象對象中的方法:
- 創建子類,繼承父類
- 重寫方法
- 創建子類對象
- 調用重寫方法
使用匿名內部類:無需創建子類直接new父類即可:
格式一:
new 父類(){
重寫方法
}.重寫的方法名
格式二:
父類 對象名 = new 父類(){
重寫方法
}
對象名.重寫的方法名
大大地簡化了操作,如果只是想簡單的調用這個抽象方法,就可以使用匿名內部類。
2,匿名內部類注意事項:
- new出來的父類其實代表的是子類對象
- 從開始的大括號到最後的大括號結束–>代表的是整個對象
三.權限修飾符
1,修飾符修飾成員的作用範圍
(√代表可以訪問到!×代表訪問不到!)
public | protected | 默認的(什麼都不寫) | private | |
---|---|---|---|---|
同一個類中 | √ | √ | √ | √ |
同包不同類 | √ | √ | √ | × |
不同包的子父類 | √ | √ | × | × |
不同包非子類 | √ | × | × | × |
2,權限修飾符注意事項
- 成員變量一般情況使用private
- 構造方法使用public 方便創建對象
- 成員方法使用public 方便調用方法