訪問級別:
public
private
internal 成員只能由定義它的專案(程式集)內部的**訪問
protected 成員只能由類或派生類中的**訪問
protected internal 只能由專案(程式集)中派生類的**來訪問
定義字段:
readonly: 表示這個字段只能在執行建構函式的過程中賦值,或由初始化賦值語句賦值
static:靜態字段
定義方法:
static
virtual 方法可重寫
abstract 方法必須在非抽象的派生類中重寫(只用於抽象類中)
override 方法重寫了乙個基類方法(如果方法被重寫,就必須用該關鍵字)
extern 方法定義放在其他地方
override sealed 方法不能由派生類重寫
定義屬性:
private int myint;
public int myintprop
set}
屬性可以使用virtual,override,abstract 關鍵字,但這幾個關鍵字不能用在字段中。
自動屬性
public int myintprop
c#編譯器會新增未輸入的內容,編譯哭會宣告乙個用於儲存屬性的私有字段,並在屬性的get和set塊中使用該
字段。我們以通常的方式定義屬性的可訪問性,型別和名稱,但沒有給get和set塊提供執行**。這些塊執行**(
和底層的字段)都由編譯器提供。
使用自動屬性時,只能通過 屬性訪問資料。
自動屬性唯一限制是它們必須包含get和set訪問器,不能用這種方式定義唯讀或只寫的屬性
隱藏基類方法:new
重寫基本類方法:override
例如:重寫
1public
class
mybaseclass27
}89public
class
myderivedclass:mybaseclass
1015}16
17myderivedclass myobj
=new
myderivedclass();
18mybaseclass mybaseobj;
19mybaseobj
=myobj;
20mybaseobj.dosomething();
21結果: derived imp
2223
隱藏
1public
class
mybaseclass27
}89public
class
myderivedclass:mybaseclass
1015}16
17myderivedclass myobj
=new
myderivedclass();
18mybaseclass mybaseobj;
19mybaseobj
=myobj;
20mybaseobj.dosomething();
21結果: base imp
2223
無論是重寫還是隱藏成員,都可以在派生類的內部訪問基類成員。使用base關鍵字
public class mybaseclass
}public class myderivedclass:mybaseclass
介面:注意:
1.不允許使用訪問修飾符(public ,private ,protected,internal),所有的介面成員都是公共的。
2.介面成員不能包含**體
3.介面不能定義字段成員
4.介面成員不能用關鍵字static ,virtual,abstract,sealed來定義
5.型別定義成員是禁止的
6.如果隱藏了基介面成員,可以用關鍵字new來定義它們
在類中實現介面:
實現介面的類必須包含該介面所有成員的執行**,且必須匹配指定的簽名(包括匹配指定的get和set塊),
並且必須是公共的
1public
inte***ce
imyinte***ce26
public
class
myclass:imyinte***ce711
public
void
dosomethingelse()
1214}
可以使用關鍵字virtual或abstract 來執行介面成員,便不能使用static 或const。
繼承乙個實現給定介面的基類,就意味著派生類隱式地支援這個介面。
部分類partial
使用部分類定義,使類的定義放到多個檔案中,例如,可以把字段,屬性和建構函式入在乙個檔案中,而把方
法放在另乙個檔案中,為此,只需在每個包含部分類定義的檔案中對類使用partial關鍵字就可
public partial class myclass
類的定義 資料成員與成員方法
私有成員與公有成員 class a def init self,value1 0,value2 0 構造方法 self.value1 value1 self.value2 value2 私有成員 def setvalue self,value1,value2 成員方法,公有成員 self.value...
類的定義 成員定義修飾符
類的定義 修飾符含義 1無或internal 只能在當前專案中訪問類,其它專案引用後也無法訪問 2public 可以任何地方訪問類 3abstract 不能例項化,只能供繼承之用 4sealed 不能供派生之用,只能例項化 5internal abstract 1 36 public abstrac...
Time類的定義(成員函式)
time limit 1000ms memory limit 65536k 通過本題目的練習可以掌握類與物件的定義 設計乙個時間類 time 私有資料成員有 hour 時 minute 分 second 秒 公有成員函式有 sethour int 設定資料成員 hour 的值,非法的輸入預設為12 ...