標籤:ack 運行 問控制 public private xtend 重用 命名衝突 類繼承
1.繼承:
1)目的:避免代碼重複,有利於代碼的重用
2)通過extends實現繼承
3)父類/基類:所有子類所共有的屬性和行為
子類/衍生類別:子類所特有的屬性和行為
4)子類繼承父類後,子類具有的方法:
子類方法+父類方法
5)一個父類可以有多個子類
一個子類只能有一個父類----單一繼承
6)繼承具有傳遞性
7)java規定:構造子類之前必須先構造父類
子類構造中若沒有調用父類的構造,則預設super()來調父類的無參構造,若自己調了,則不再預設提供
super()調用父類構造,必須位於子類構造的第一句
2.super:指代當前對象的父類對象
用法:
super.成員變數名-------訪問父類的成員變數
super.方法名()---------調用父類的方法
super()----------------調用父類的構造方法
3.向上造型:
1)父類型的引用指向子類的對象
2)能點出來什麼,看引用的類型
4.方法的重寫(Override):
1)發生在父子類中,方法名相同,參數列表相同,方法體不同
2)重寫方法被調用時,看對象的類型
2.重寫與重載的區別:----常見面試題
1)重寫:父子類中,方法名相同,參數列表相同,方法體不同
遵循"運行期"綁定,根據對象的類型調用方法
2)重載:一個類中,方法名相同,參數列表不同,方法體不同
遵循"編譯期"綁定,根據引用的類型Binder 方法
3.package:
1)作用:避免類的命名衝突
2)包名可以有階層
3)建議:包名所有字母都小寫
4)類的完全限定名: 包名.類名
import:
1)作用:聲明類/引入類
2)同包中的類可以直接存取
不同包中的類想訪問:
2.1)先import聲明類再訪問類(建議)
2.2)類的全稱-----太繁瑣(不建議)
5.存取控制修飾符:
1)public:公開的,任何類
2)private:私人的,本類
3)protected:受保護的,本類、子類、同包類
4)預設的:什麼也不寫,本類、同包類
類的訪問修飾:public和預設的
類成員的訪問修飾:如上4種都可以
6.static:靜態
1)靜態變數:
1.1)由static修飾
1.2)屬於類的,存在方法區中,只有一份
1.3)常常通過類名.來訪問
1.4)何時用:所有對象的資料都一樣時使用
2)靜態方法:
2.1)由static修飾
2.2)屬於類的,存在方法區中,只有一份
2.3)常常通過類名.來訪問
2.4)沒有隱式的this傳遞
靜態方法中不能直接存取執行個體成員
2.5)何時用:方法的操作僅與參數相關而與對象無關時使用
3)靜態塊:
3.1)由static修飾
3.2)屬於類的,類被載入期間自動執行
類只被載入一次,所以靜態塊也只執行一次
3.3)何時用:常常用於載入/初始化靜態資源(圖片、音頻、視頻...)
7.final:不能變
1)修飾變數:變數不能被改變
2)修飾方法:方法不能被重寫
3)修飾類: 類不能被繼承
JAVA基礎總結二——繼承、重寫、重載相關知識點