【設計模式】--】知識總結
阿新 • • 發佈:2018-12-11
在最近的設計模式學習中學習到了一些知識點,之前就是模模糊糊就過了,再學習的時候嘴上就像蓋了一層紗,就是說不出來東西,所以還是來總結一下吧。
建構函式 VS 一般函式
建構函式:用於給物件進行初始化;與所在類的名稱相同;不需要定義返回值型別(因為沒有具體的返回值)。
一個類中可以有多個建構函式,以過載的方式體現。
區別:
1、定義格式不同。
2、建構函式在物件建立時被呼叫,一般函式在物件建立後需要呼叫的時候執行。
注:一個類在定義時,如果沒有定義建構函式,預設為空引數的建構函式。
成員變數 VS 區域性變數
成員變數 | 區域性變數 | |
在類的位置 | 類中方法的外面 | 在方法中或方法宣告上 |
記憶體中的位置 | 堆 |
棧 |
宣告週期 | 隨物件存在而存在,消失而消失 | 隨方法呼叫而存在,呼叫完畢消失 |
初始值 | 預設初始值 | 無預設,使用之前賦值。 |
重寫 VS 過載
重寫 | 過載 | |
引數 | 和被重寫方法一樣 | 必須有不同引數 |
返回型別 | 與被重寫方法返回型別相同 | 可不返回不同型別 |
訪問修飾符 | 限制大於被重寫方法的訪問修飾符 | 可以有不同的訪問修飾符 |
異常 | 不能丟擲新的異常或者比被重寫方法更寬泛的異常 | 可以丟擲不同的異常 |
抽象類 VS 介面
抽象類 | 介面 |
一個類只能繼承一個抽象類 | 一個類可以實現多個介面 |
對動作的抽象 | 對根源的抽象 |
不能多繼承 | 可以多繼承 |
定義的方法部分可實現 | 定義的方法不能實現 |
基本資料型別是static |