首先,我們要了解在 .NET Framework只能單一繼承,也就是每一個類別(Class)只能繼承一個基礎類別(BaseClass),但深度沒有限制。
A Class --> B Class --> C Class --> D Class
--> E Class --> F Class
--> G Class
但介面可以有多重繼承,也就一個類別可同時繼承多個介面,以 List類別為例,
Public Class List(Of T) _ Implements IList(Of T), ICollection(Of T), _ IEnumerable(Of T), IList, ICollection, IEnumerable
它同時實作了六個介面,
- IList(Of T)
- ICollection(Of T)
- IEnumerable(Of T)
- IList
- ICollection
- IEnumerable
那我靈光一閃什麼呢?
我們需要的組織或架構是「樹狀, Tree」,那就可以規劃使用繼承。繼承的方向單純,走的是「Top-Down」。例如,我們看一下「人的科學分類」,這就很合適使用繼承。
我們需要的織組或架構是「網狀, Net」,那就可以規劃使用介面。介面是多方向,走的是「Matrix,矩陣」、「放射狀」。
以上就是我小小一閃的心得。
沒有留言:
張貼留言
感謝您的留言,如果我的文章你喜歡或對你有幫助,按個「讚」或「分享」它,我會很高興的。