形式參數爲引用類型:
類:需要的是該類的對象
抽象類:需要的是該抽象類的子類對象
接口:需要的是該接口的實現類對象
返回值引用類型:
類:返回的是該類的對象
抽象類:返回的是該抽象類的子類對象
接口:返回的是該接口的實現類的對象
鏈式編程:
特點:每次調完方法後,返回的是一個對象。
包的概述及講解:
包:
其實就是文件夾
作用
把相同的類名放到不同的包中
對類進行分類管理
包的定義
package 包名;
多級包用.分開即可
注意事項:
package 語句必須是程序的第一條可執行的代碼
package 語句在一個java 文件中只能有一個
如果沒有package,默認表示無包名
內部類概述:
把類定義在其他類的內部,這個類就被稱爲內部類。
內部類的訪問特點:
內部類可以直接訪問外部類的成員,包括私有。
外部類要訪問內部類的成員,必須創建對象。
內部類位置:
成員位置:在成員位置定義的類,被稱爲成員內部類。
局部位置:在局部位置定義的類,被稱爲局部內部類。
成員內部類:
如何直接訪問內部類成員。
外部類名.內部類名 對象名 = new 外部類名().new 內部類名();
成員內部類的常見修飾符
private 爲了保證數據的安全性
static 爲了讓數據訪問更安全
被靜態修飾的成員內部類只能訪問外部類的靜態成員
內部類被靜態修飾後的方法
成員內部類被靜態修飾後的訪問方式是:
外部類名.內部類名 對象名 = new 外部類名.內部類名();
靜態方法:靜態方法訪問的另一種方式:外部類名.內部類名.方法名();
非靜態方法
局部內部類:
可以直接訪問外部類的成員
在局部位置,可以創建內部類對象,通過對象調用內部類方法,來使用局部內部類功能
局部內部類訪問局部變量的注意事項
局部內部類訪問局部變量必須用final修飾
局部變量是隨着方法的調用而調用,隨着調用完畢而消失。
而堆內存的內容並不會立即消失。所以加final修飾
匿名內部類
就是內部類的簡化寫法。
前提:存在一個類或者接口
這裏的類可以是具體類也可以是抽象類。
格式:
new 類名或者接口名(){
重寫方法;
}
本質:是一個繼承了該類或者接口的子類的匿名對象