C 基礎語法 Base關鍵字學習筆記

2022-09-26 07:24:13 字數 1098 閱讀 3483

它與this關鍵字一樣,都是作為類的例項(因此不能呼叫基類的程式設計客棧靜態成員和抽象成員)簡寫或者替代而存在的,只不過this關鍵字用於替代本類的例項,base關鍵字用於替代基類的例項,用法很簡單,其訪問基類的形式如下: 

base.【識別符號】

base[【表示式列表】]      這個型別的一看便可以大概猜測多用於基類例項的索引器操作,在***演示的**中你會看到它的用法。

對於  base.【識別符號】的訪問形式再次說明一下:

對於非虛方法,這種訪問僅僅是對基類例項成員的直接訪問,完全等價於((base)this).【識別符號】。

對於虛方法,對於這種訪子類重寫該虛方法運用這種yegquwbs訪問形式也是(禁用了虛方法呼叫的機制)對基類例項成員的直接訪問,將其看做非虛方法處理,此時則不等價於((base)this).【識別符號】,因為這種格式完全遵守虛方法呼叫的機制,其宣告試時為積累型別,執行時為子類型別,所以執行的還是子類的重寫方法。於未重寫的虛方法等同於簡單的非虛方法處理。

測試**如下:

using system;

namespace basetest

public virtual void f2()//virtual method

public virtual void f3()

public string this[int index]

else

}get

else}}

} class child:father

public override void f2()

static void main(string args)

}}base用於建構函式宣告,用法和this用於建構函式宣告完全一致,但base是對基類建構函式形參的匹配。

using system;

namespace basecotest

public base(int a)

public base()

} class sub : base

public sub(int a)

: base(1, "123")

class test}}}

本文位址: /ruanjian/csharp/126748.html

學習Base關鍵字

它與this關鍵字一樣,都是作為類的例項 因此不能呼叫基類的靜態成員和抽象成員 簡寫或者替代而存在的,只不過this關鍵字用於替代本類的例項,base關鍵字用於替代基類的例項,用法很簡單,其訪問基類的形式如下 base.識別符號 base 表示式列表 這個型別的一看便可以大概猜測多用於基類例項的索引...

base關鍵字 this關鍵字

用於在派生類中實現對基類公有或者受保護成員的訪問,但是只侷限在建構函式 例項方法和例項屬性訪問器中。功能主要包括 1 呼叫基類上已被其他方法重寫的方法。2 指定建立派生類例項時應呼叫的基類建構函式。base常用於,在派生類物件初始化時和基類進行通訊。base可以訪問基類的公有成員和受保護成員,私有成...

C 學習筆記 base關鍵字

base關鍵字用於從派生類中訪問基類的成員 基類訪問只能在建構函式 例項方法或例項屬性訪問器中進行。從靜態方法中使用base關鍵字是錯誤的。在本例中,基類 person 和派生類 employee 都有乙個名為 getinfo 的方法。通過使用base關鍵字,可以從派生類中呼叫基類的 getinfo...