一、繼承: 繼承性的好處
1.減少了**的冗餘,提高**的復用性
2.便於功能的擴充套件
3.為多型性提供了前提
二、繼承性的格式: class a extends b {}2.1 體現: 子類繼承父類後,子類也就繼承了父類的屬性和方法
注意: 父類宣告為private的屬性和方法,子類繼承父類後,仍然能獲取父類中的私有結構,
只是因為封裝性的原因,使得子類不能直接使用父類的結構而已
2.2 子類繼承後,可以實現自己的方法,實現功能擴充套件
三、繼承的規定:3.1 子類繼承父類後,獲得直接父類和間接父類的所有屬性和方法
四、方法的重寫(override/overwrite)1.子類對父類的同名同引數的方法,進行覆蓋操作
2.重寫後,通過子類物件呼叫時,直接呼叫子類重寫後的方法
3.重寫的規定:
①重寫方法的方法名和形參列表相同
②子類重寫方法的許可權修飾符不小於父類中方法的許可權
>子類不能修改父類中的private修飾的方法
③返回值型別
>父類是void則子類也必須是void
>父類是a型別,子類則是a或a的子類
>父類是基本資料型別,子類必須相等的基本資料型別
④子類重寫的方法丟擲的異常不大於父類丟擲的異常
五、super關鍵字的使用:理解為父類
5.1 在子類的方法中通過"super.屬性"和"super.方法()"呼叫父類的屬性和方法
5.2 可以在子類的構造器中使用"super(形參列表)"呼叫父類中的指定的構造器
六、子類物件的例項化過程1.從結果上看: 子類繼承父類後,就獲取了父類 中的屬性或方法
建立的子類物件,在堆空間中,就會載入所有父類的屬性
2.從過程上看: 通過子類的構造器建立子類物件時,一定會直接或間接的呼叫其父類的構造器,直到呼叫object的無參構造器,
正因為載入過所有的父類的結構,所以記憶體中可以看到有父類中的結構,子類物件才可以呼叫
七、多型性1.理解: 乙個事物的多種形態
2.何為多型性:
物件的多型性: 父類的引用指向子類的物件"father com = new son();"
3.多型的使用: 虛擬方法(父類被重寫的方法)的呼叫
多型的使用,當呼叫子父類同名同參的方法時,實際執行的是子類重寫父類的方法----虛擬方法呼叫
有了物件的多型性以後,在編譯期,只能呼叫父類中宣告的方法,但執行期,實際執行的是子類重寫父類的方法
如果子類沒有重寫,那就會直接到父類中呼叫(此時多型性的意義不大)
總結: 編譯看左邊,執行看右邊(不適用於屬性)
4.多型性使用前提
①要有類的「繼承關係「
②要有方法的「重寫」
5.物件的多型性只適用於方法,不適用於屬性(屬性都看左邊)
八、向上轉型(多型)、向下轉型
九、instanceof的使用
a instanceof a: 判斷a是否是類a的例項
為了避免在向下轉型是出現classcaseexception,先進行instanceof判斷
十、**塊1.作用: 用來初始化類、物件
2.如果需要修飾,只能使用static,預設不需要
3.分類: 靜態**塊、非靜態**塊
4.靜態**塊
>內部可以有輸出語句
>隨著類的載入而」執行「
>只會執行一次(類載入的時候)
>作用: 初始化類的資訊
>靜態**塊的執行要優先於非靜態**塊的執行
5.非靜態**塊
>內部可以有輸出語句
>隨著物件的建立而呼叫
>每建立乙個物件,就執行一次
>作用: 可以在建立物件時對物件的屬性進行初始化
小知識點2
find name svn exec rm rf find type d name svn xargs rm rf find type d name svn make otapackage j24 adb shell am start n 包名 類名 adb shell pm list packag...
高數小知識點(2)
1。偏導數 代數意義 偏導數是對乙個變數求導,另乙個變數當做數 對x求偏導的話y就看作乙個數,描述的是x方向上的變化率 對y求偏導的話x就看作乙個數,描述的是y方向上的變化率 幾何意義 對x求偏導是曲面z f x,y 在x方向上的切線 對y求偏導是曲面z f x,y 在x方向上的切線 這裡在補充點。...
struts2小知識點
color red 1 預設的命名空間 namespace 根命名空間 namespace color 如果未指定命名空間,則命名空間預設為 namespace 預設命名空間裡的action可以處理任何命名空間下的action請求。例如,如果存在url為 barspace bar.action的請求...