封裝 繼承 多型
一,封裝:隱藏類的內部實現,提供公有的方法進行訪問;
封裝步驟:
訪問修飾符改為private,生成共有的set get 方法,在set方法中進行條件判斷;
bollean變數的set get 方法要特別注意一下:
private boolean flag;
public boolean isflag()
public void setflag(boolean flag)
繼承:子類與父類的關係是is a 的關係;繼承的關鍵字是extends。
子類繼承父類規則:
1,如果父類屬性和方法訪問修飾符是public protected ,子類就繼承父類這些屬性和方法。
2,如果父類屬性和方法訪問修飾符是預設的的,當子類和父類在同乙個包中,子類可以繼承父類的屬性和方法;
3,構造方法不能被繼承,構造方法可以被呼叫。
super關鍵字的作用:
1,呼叫父類的屬性:父類屬型的訪問修飾符必須為非私有的;
2,呼叫父類的方法:父類的方法的訪問修飾符必須為非私有的;
3,呼叫父類的構造方法,在子類構造方法中,通過super 關鍵字呼叫父類的構造方法,應該放在子類的構造方法的第一行。所以在子類的構造方法中不能同時使用super
和this』關鍵字呼叫構造方法。
4,如果子類中的構造方法中,沒有使用this和super關鍵字呼叫構造方法,子類預設使用super呼叫父類的無參構造方法。
重寫規則:
1,子類重寫父類的方法;
2,訪問修飾符不能嚴於父類的訪問修飾符;
3,方法的返回值因該是父類方法的返回值或者是其本身;
4,方法名要相同,引數列表也要相同;
過載:同喲個類中,方法名相同,引數不同,和返回值,訪問修飾符無關;
如果父類中的某個方法,在子類中被重寫了,父類的這個方法就可以定義為抽象方法,含有抽象方法的類都是抽象類;抽象類和抽象方法都用abstract修飾。
static修飾方法和變數:
static修飾的的變數是靜態變數,靜態變數可以通過物件名呼叫也可以通過類名呼叫,靜態變數在記憶體中只有以乙個拷貝。
public class person
}sttatic 修飾的方法是靜態方法:
靜態方法不能使用this關鍵字;
同乙個類中,靜態方法想要呼叫例項方法,需要通過物件名.例項方法;例項方法可以直接呼叫靜態方法。
多型:同乙個引用型別,使用不同的例項而執行不同的在操作。
多型的兩種方法:
父類當作方法的引數:
public void cure (pet pet)
父類當作方法的返回值:
public pet give(string type)else
}子類物件賦值給父類型別的變數,向上轉型;
父類型別的變數呼叫的方法是:子類繼承父類的方法,或者是子類重寫父類的方法;
父類型別的變數想要呼叫子類中特有的方法,向下轉型,需要使用instanceof關鍵字進行型別判斷。
總結封裝 繼承 多型
總結封裝 繼承 多型 封裝 隱藏類的內部實現,提供公有的訪問的方法。步驟 修飾屬性訪問修飾符。提供公有的set get方法。set get 方法中新增判斷。boolean型別的變數,它的set和get方法注意一下 private boolean flag public boolean isflag ...
封裝 繼承 多型總結
一 封裝 隱藏類的內部實現,提供公有的訪問的方法。步驟 1 修飾屬性訪問修飾符。2 提供公有的set get方法。3 set get 方法中新增判斷。注意 boolean型別的變數,它的set和get方法 private boolean flag public boolean isflag publ...
封裝,繼承,多型
一 1 封裝 該隱藏隱藏,該公開的公開 屬性隱藏,同時提供get set方法 有些方法應該隱藏 方法宣告公開,實現隱藏。實現的改變對架構的影響最小 2 繼承 一般 特殊 單繼承 乙個類最多只能有乙個直接父類。類之間可以形成樹狀關係 根據訪問許可權,子類如果可以訪問父類的屬性和方法,就能繼承 priv...