第9章 類定義
9.1C#中類的定義
class MyClass
{}
Internal class MyClass //隻有目前項目中的代碼才能通路
{}
Public:公共的,可以由其他項目中的代碼通路
Abstract:抽象的,不能執行個體化,隻能繼承,可以有抽象成員。
Sealed:密封的,不能繼承
:後先接基類,再接口
接口的定義:interface IMyInterface{}
關鍵字abstract和sealed不能在接口中使用
9.2System.Object
9.3構造函數和析構函數
私有的構造函數:保證類不被執行個體化,一般用于有靜态字段,方法的類。
構造函數初始化器:base指定基類執行個體化時調用的函數;this
Public MyDerivedClass(int i,intj):base(i)
{}
9.4 VS和VCE中的OOP工具
9.5類庫項目
如果一個項目,隻包括類,沒有入口點,則成為類庫。
Add reference, using lib
9.6接口和抽象類
類似處:可以由派生類繼承的成員,不能直接執行個體化,可以聲明他們的變量
不同之處:派生類隻能繼承一個基類;類可以使用任意多個接口。抽象類可以有抽象成員和非抽象成員。接口成員都必須在使用接口的類實作,沒有代碼體。抽象類主要用作對像系類的基類,共享某些特性;接口主要用于類,這些類在基礎水準上有所不同,單可以完成某些相同的任務。
9.7結構類型