クラスがクラスの機能の一部として、他のクラスのインスタンスを所持する設計をコンポーネント指向という
C#の設計思想の中核はコンポーネント指向
継承より委譲を重視していて、それが言語の設計思想になっている点が、java的なオブジェクト指向言語との差別化になっている