當前位置:成語大全網 - 漢語詞典 - C#什麽是顯式調用?什麽是隱式調用?

C#什麽是顯式調用?什麽是隱式調用?

C#接口的隱式和顯式調用、區別和示例

命名空間MyInface

{

//顯示接口只能用接口調用。

//隱式接口和類都可以調用。

公共接口IBookList

{

void Add(字符串BookName);

void Append(字符串BookName);

void Remove(int位置);

int Count { get}

string this[int index]{ get;設置;}

}

//隱式調用

公開課書目:IBookList

{

個人分發名單& lt字符串& gtbooklist = new List & lt字符串& gt();

#區域圖書列表成員

公共void Add(字符串BookName)

{

書單。添加(圖書名稱);

}

公共void Append(字符串BookName)

{

書單。插入(書目。Count,BookName);

}

公共void刪除(中間位置)

{

書單。RemoveAt(位置);

}

公共int計數

{

得到

{

返回書單。數數;

}

}

公共字符串this[int index]

{

得到

{

返回書目[索引];

}

設置

{

booklist[index]= value;

}

}

#結束區域

}

//說明調用這個類只能用接口調用。

公開課書目2 : IBookList

{

個人分發名單& lt字符串& gtbooklist = new List & lt字符串& gt();

#區域圖書列表成員

作廢IBookList。添加(字符串BookName)

{

書單。添加(圖書名稱);

}

作廢IBookList。Append(字符串BookName)

{

書單。插入(書目。Count,BookName);

}

作廢IBookList。移除(中間位置)

{

書單。拆下(位置。ToString());

}

int IBookList。數數

{

得到

{

返回書單。數數;

}

}

string IBookList.this[int index]

{

得到

{

返回書目[索引];

}

設置

{

booklist[index]= value;

}

}

#結束區域

}

類別文本

{

靜態空幹管()

{

//隱式調用。

BookList bk list = new BookList();

bk list . add(" implicit ");

控制臺。Write("實現隱式接口的示例:使用類:{0} ",bk list[0]);

ibook list ibk list =(ibook list)bk list;//更改類型後,鏈接的內容也被分配給它。

Ibklist。add(" $ $ $ $ $ $ $ $ $ implicit ");//這裏的索引是第二個。

控制臺。Write("實現隱式接口的示例:使用接口{0} ",ibk list[1]);

//只能用接口進行顯示調用。

book list 2 bk list 2 = new book list 2();

//If bklist2。直接使用Add(“顯示”);這樣會犯錯誤。比如:

//僅如下:

ibook list Ibk =(ibook list)bk list 2;

Ibk。添加(" $$$$ $ $顯示界面");//用接口添加

控制臺。Write("實現顯示接口的例子:使用接口{0} ",Ibk[0]);//用接口調用。

控制臺。ReadLine();

}

}

}