封裝 繼承 多態:
封裝:
用private修飾的成員變量可以看做是進行了封裝
繼承:
可以繼承類,抽線類 接口
單繼承,多實現接口
子類繼承不了父類中使用private修飾的變量,方法
多態:
多態的前提:
有繼承
有方法的重寫
向上轉型:
class Fu{}
class Zi extends Fu{}
Fu fu = new Zi()
向下轉型:
Zi zi = (Zi)fu;
對應多態:
若子類重寫了類的抽象方法或者重寫了父類的方法,
那麼再調用方法的時候,是使用的子類的方法,成員變量是使用的父類的
接口(interface修飾的類):
1:接口中抽象類一般是用來,體現某些類特有的功能
2:不能創建對象,只可以利用多太的向上轉型創建對象
3:接口中只能有抽下的方法,沒有方法體。
4:沒有構造方法
注:用abstract修飾的方法爲抽象方法
抽線類(abstract修飾的類)
1:抽象類裏面的成員變量和成員方法,一般是提取出的類額共有的部分
2:不能創建對象,只能通過多態的向上轉型創建對象
3:不能創建對象,沒有構造方法
類:
1:變量,
成員變量
類內方法外的變量
局部變量
方法內部的變量,若方法內的變量和成員變量重名,則利用就近原則,使用方法內的變量,
若想使用成員變量,可以使用this.成員變量
2:方法
靜態方法:
用static修飾的方法就是靜態方法,
非靜態方法
沒有static修飾的方法就是非靜態方法
注:靜態方法和非靜態的方法是不能相互調用的
3:構造方法
系統提供默認的無參數的構造方法
如果類內沒有寫構造方法就會使用默認的構造方法
只要類內寫了構造方法,無論是有參數的還是無參數的都會覆蓋掉默認的構造方法
無參數構造方法
有參數構造方法
方法的重載:
1:方法的重載是再同一個類中的,方法名相同,參數的列表是不同的(參數的個數或者參數的類型是不同的)
與返回值得類型是無關得
注:方法的重載是再同一個類中的
方法的重寫:
1:方法的重寫是體現再不同類中的,是子類重寫父類中的方法(包括接口中,抽象類中抽象方法的重寫)
注:1:方法的重寫是再不同的類中的,是子類重寫父類的方法的
2:方法的重寫是:方法名和參數列表和返回值的類型是一致的(相同的)
final:
修飾成員變量:
是常量,是不能被修改的
修飾成員方法:
是最終的方法,不能被子類重寫
修飾類:
是最終類,不能被繼承
static:靜態修飾變量
修飾成員變量:
靜態變量
是屬於類的,
是靜態的變量,是所有的對象所共有的,其中的一個對象對其改變,其餘的變量使用它,是再使用改變後的成員變量
修飾成員方法:
靜態方法
是屬於類的,類再靜態方法再,類無靜態方法無,對象是無法使用靜態類,但是可以使用 類明.靜態方法
修飾類:
是靜態類
代碼塊:
靜態代碼塊:
定義再類中的使用static修飾的代碼塊,是隨着的加載而執行
類只會被加載一次,故靜態代碼塊只會被執行一次
局部代碼塊:
定義再方法內部的代碼塊
構造代碼塊:
定義再類中的,但是沒有使用static修飾的
只要創建對象就會被執行
數據類型:
引用數據類型:
集合
類對象
數組
引用數據類型做參數會改變實際參數的值
基本數據類型:
byte char short int float double long boolean
基本數據類型做參數,只會改變形參的值,不會改變實參的值
super this
super指定是父類
this指的是子類
在類中或者繼承中,可以使用super.變量 super.方法名使用父類中被子類覆蓋的變量和被子類重寫的方法
默認是使用的自己類中的方法(默認是帶有this的)
java類繼承多態等知識點
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.