類和物件
1、程序導向
2、物件導向
- 注重類的設計,找一個物件去完成這件事
- 如 Java
3、類和物件
- 類是一個抽象的、不具體的,如汽車圖紙
- 物件是真實存在的,是類的範例,如根據圖紙造出來的汽車
4、類包含什麼
封裝
什麼是封裝?
如何實現封裝
構造方法
- 1.建立物件
- 2.建立物件的同時給屬性賦值
- 3.所有的類都會有構造方法
- 4.構造方法可以進行過載,如果加了一個有參構造方法,必須顯示的加一個無參構造方法
this
- 1.this代表當前物件
- 2.用來區分成員變數和區域性變數
- 3.可以修飾成員變數(this.成員變數名)、成員方法(this.方法名)、構造方法(this(形參))
繼承
1、什麼時繼承?
2、繼承的優缺點
- 優點:提高程式碼的複用性
- 缺點:類和類之間的耦合度變高了
3、存取修飾符
- public
- protected
- default
- private
4、super
- 1.當子類和父類別屬性重名時,可以通過 super.屬性名 的方式呼叫父類別的屬性
- 2.當子類重寫父類別的方法後,可以通過 super.方法名 的方式呼叫父類別未重寫前的方法
- 3.通過 super(形參) 的方式呼叫父類別的構造方法,預設呼叫父類別無參構造方法
- 4.this代表當前物件,super代表父類別物件
5、方法重寫
- 什麼是方法重寫?
如果父類別的方法滿足不了子類的需求,可以重寫父類別的方法
- 要求
1.要求子類方法名、參數列表、返回值型別必須與父類別一致
2.子類方法的存取修飾符許可權不能小於父類別
3.子類和父類別方法必須同爲static或非static
多型
1、什麼時多型?
- 1.一個物件的多種形態
- 2.同一個動作作用於不同的物件所產生的行爲是不一樣的
2、多型的型別
- 1.編譯時多型(方法過載)
- 2.執行時多型(程式在執行期間才能 纔能確定物件的型別)
3、多型產生的條件
- 1.方法過載
- 2.方法重寫
- 3.存在繼承關係
- 4.介面的實現
- 5.子類物件的多型性
4、多型的特性
- 1.子類物件的多型性(父類別的參照指向子類的範例),Person stu = new Student();
- 2.在編譯的時候呼叫父類別的存取,在執行時執行的是子類重寫的方法
- 3.編譯看左邊,執行看右邊
- 4.子類和父類別的型別轉換
向上轉型(子類轉成父類別),Person stu = new Student();
向下轉型(父類別轉成子類),Student stu1 = (Student0) stu;
5、final
- final代表什麼
代表最終的意思
- final可以修飾什麼?
1.修飾的類不能被繼承
2.修飾的方法不能被重寫
3.修飾成員變數,成員變數就變成了常數,不會再有預設值
4.修飾區域性變數,就變成了常數
6、static
1.成員變數(類變數)
- 類變數隨着類的載入而載入,無論建立多少物件,這些物件都共用我這個變數值
- 用static修飾的變數,這個變數就不再屬於物件,而屬於類本身
- 存取:類名.屬性
- 類變數儲存在方法區靜態域
2.成員方法(類方法)
- 用static修飾的方法,這個方法就不再屬於物件,而屬於類本身
- 存取:類名.方法名
- 在類方法裏面只能呼叫靜態變數或靜態方法,不能呼叫非靜態變數和方法
- 在非靜態方法裏面可以呼叫靜態變數和靜態方法
- 不能使用this、super關鍵字
3.靜態程式碼塊
- static{}
- 它隨着類的載入而載入,只會執行一次
- JDBC的工具類
抽象類
1、什麼是抽象類?
- 抽象類一般當成父類別,主要是功能的定義,具體方法的實現交給子類去完成,通過abstract進行修飾
2、抽象類的特點
- 1.抽象方法所在的類必須是抽象類
- 2.抽象類不能範例化
- 3.如果要實現一個抽象類,必須寫一個子類繼承這個抽象類
- 4.抽象類有構造方法
- 5.繼承抽象類以後,子類必須重寫抽象類所有的抽象方法(子類非抽象類)
- 6.抽象類可以定義普通方法
3、抽象方法
介面
1、什麼是介面?
- 介面就是一組規範,把不同的類或者不同層次的類具有相同行爲的集合在一起
2、怎麼定義介面
3、介面的特點
- 1.介面裏面的方法都是抽象方法
- 2.介面裏面的變數都是常數
- 3.介面就是一特殊的抽象類,不能被範例化
- 4.建立一個類實現介面,重寫這個介面的所有抽象方法(抽象類除外)
- 5.介面可以繼承介面,繼承多個介面
- 6.一個類可以實現多個介面,每個介面之間用 , 隔開,解決類單繼承的問題
- 7.介面裏面不能定義普通方法,jdk8以後有default概念,可以有方法體
- 8.介面沒有構造方法
4、實現類
- 1.實現介面的類就是實現類
- 2.如果一個類繼承一個類並且實現了一個介面,那麼繼承寫在介面前面 ,C extends A implements B
PDF下載鏈接:https://download.csdn.net/download/qq_42629988/12707476
大綱思維導圖: