泛型繼承之開放與封閉

泛型類是抽象類而具體的數據類型,那麼它是否符合普通的繼承規則?答案是確定的,不一樣的是在泛型類繼承上,基類和派生類可能只有一個是泛型類,也可能兩者都是,這樣就會出現三種狀況數組

 

基類spa

派生類繼承

普通類內存

泛型類string

泛型類table

普通類泛型

泛型類數據類型

泛型類數據

 

C#語言中,全部的類型可分爲開放類型和封閉類型兩部分。top

開放類型是指含有類型參數的類型,它包括:

1)   類型參數自己。

2)   以開放類型爲元素類型的數組類型

3)   開放類型的構造類型

 

封閉類型是指開放類之外的全部類型

 

當把一個開放類型類所包含的類型參數都替換稱爲封閉類型時,該類型也就變成了一個封閉類型,可是這裏要說明的一點是,只有封閉類型才能夠建立實例,並擁有內存存儲,而開放類型不是真正的數據類型

 

 舉例子:

Genneric <T>

因爲含有參數<T>全部開放類型

 

Genneric<int>Genneric <string>

封閉類型,參數已經肯定,不能更改

相關文章
相關標籤/搜索