1. 程式人生 > >【設計模式】--】知識總結

【設計模式】--】知識總結

在最近的設計模式學習中學習到了一些知識點,之前就是模模糊糊就過了,再學習的時候嘴上就像蓋了一層紗,就是說不出來東西,所以還是來總結一下吧。

建構函式 VS 一般函式

建構函式:用於給物件進行初始化;與所在類的名稱相同;不需要定義返回值型別(因為沒有具體的返回值)。

一個類中可以有多個建構函式,以過載的方式體現。

區別:

  1、定義格式不同。

  2、建構函式在物件建立時被呼叫,一般函式在物件建立後需要呼叫的時候執行。

注:一個類在定義時,如果沒有定義建構函式,預設為空引數的建構函式。

成員變數 VS 區域性變數

成員變數 區域性變數
在類的位置 類中方法的外面 在方法中或方法宣告上
記憶體中的位置

宣告週期 隨物件存在而存在,消失而消失 隨方法呼叫而存在,呼叫完畢消失
初始值 預設初始值 無預設,使用之前賦值。

重寫 VS 過載

重寫 過載
引數 和被重寫方法一樣 必須有不同引數
返回型別 與被重寫方法返回型別相同 可不返回不同型別
訪問修飾符 限制大於被重寫方法的訪問修飾符 可以有不同的訪問修飾符
異常 不能丟擲新的異常或者比被重寫方法更寬泛的異常 可以丟擲不同的異常

抽象類 VS 介面

抽象類 介面
一個類只能繼承一個抽象類 一個類可以實現多個介面
對動作的抽象 對根源的抽象
不能多繼承 可以多繼承
定義的方法部分可實現 定義的方法不能實現
基本資料型別是static