重寫:需要有繼承關係,子類重新父類的方法(是針對方法重寫,不是屬性)。方法名必須相同
引數列表必須相同
修飾符:範圍可以擴大 public>protected>default>private
丟擲的異常:範圍可以縮小但不能擴大 classnotfoundexception–>exception(大)
重寫,子類的方法必須要和父類的方法一致,方法體不同!
為什麼要重寫:父類的功能子類不一定需要,或者不一定滿足。
alt+insert:選擇override
//此處三個class檔案
public
classb}
public
class
aextendsb}
public
class
}/*輸出:
a->text
a->text
process finished with exit code 0
*/
多型注意事項:
多型是方法的多型,屬性沒有多型
父類和子類,有聯絡 型別轉換異常:classcastexception!
存在條件:繼承關係,方法需要重寫,父類引用指向子類物件
//此處三個class檔案
public
class
person
}public
class
student
extends
person
public
void
eat()}
public
classap}
/*輸出:
earson
process finished with exit code 0
*/
instanceof 判斷乙個物件是什麼型別
/*
object > string
object > person > teacher
object > person > student
*/system.out.
println
(x instanceofy)
;//有父子關係就可以編譯成功,不存在父子關係編譯會報錯
//x所指向的型別是y的子型別,輸出true,反之為false
system.out.
println
(person instanceof
student);
//輸出true
system.out.
println
(person instanceof
object);
//輸出true
system.out.
println
(object instanceof
string);
//輸出false
實驗
//此處三個class檔案
public
class
person
}public
class
student
extends
person
}public
classap}
/*1.父類引用指向子類的物件
2.把子類轉換為父類,向上轉型
3.把父類轉換成子類,向下轉型,強制轉換
4.方便方法的呼叫,減少重複的**
*//*輸出:
gogo
process finished with exit code 0
*/
day08 物件導向 多型
package com.oop.demo07 public class package com.oop.demo07 public class person package com.oop.demo07 public class student extends person public void ...
物件導向 day08 異常處理 斷言(七)
1 概述 2 知識點回顧 3 斷言 python中斷言,這個我是第一次聽說到的,斷言有什麼用呢?斷言就是做一些程式的檢查工作,就是在執行之前需要做的一些檢查,比如類似於安檢一樣,合格的就能過,不合格的就不能過。也類似於銀行轉賬工作,真正的轉賬之前是不是要檢查使用者各方面,是不是賬號密碼是不是都沒有問...
黑馬程式設計師 Java物件導向 day08
asp.net android ios開發 net培訓 期待與您交流!1 多型 定義 可以理解為事物存在的多種體現形態。例如 動物中貓,狗。貓這個物件對應的型別是貓型別 貓 x new 貓 同時貓也是動物中的一種,也可以把貓成為動物。動物 y new 貓 動物是毛和夠具體事物中抽取出來的父型別 父型...