定義類成員

2021-09-05 22:36:56 字數 2522 閱讀 2096

訪問級別:

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

例如:重寫

1

public

class

mybaseclass27

}89public

class

myderivedclass:mybaseclass

1015}16

17myderivedclass myobj

=new

myderivedclass();

18mybaseclass mybaseobj;

19mybaseobj

=myobj;

20mybaseobj.dosomething();

21結果: derived imp

2223

隱藏

1

public

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塊),

並且必須是公共的

1

public

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 ...