asp.net 虛方法、抽象方法、接口疑問(wèn)
更新時(shí)間:2009年06月13日 20:24:45 作者:
asp.net 虛方法、抽象方法、接口疑問(wèn)等說(shuō)明。
一、抽象類中可以提供非抽象的執(zhí)行方法嗎?接口呢?
答:抽象類可以這么寫(xiě):
public abstract class A
{
public string getWebUrl()
{
return "jb51.net";
}
public abstract string getWebName();
}
public class B : A
{
public override string getWebName()
{
return "腳本之家";
}
}
運(yùn)行: B b = new B();
Response.Write(b.getWebUrl());
編譯通過(guò)沒(méi)有錯(cuò)誤,而接口本身只能包含成員但不包括具體實(shí)現(xiàn),且抽象函數(shù)只能存在于抽象類中,所以接口中只有方法的簽名,但沒(méi)有具體的實(shí)現(xiàn),且不是抽象函數(shù),例如: C#復(fù)制代碼
interface IA
{
string getWebUrl();
string getWebName();
}
二、接口中的成員是否必須被其子類實(shí)現(xiàn)?
答:接口是抽象類的一個(gè)特例,而抽象函數(shù)都必須被其子類覆蓋實(shí)現(xiàn),接口中的成員也一樣必須被其子類實(shí)現(xiàn)。
三、抽象類中是否可以使用virtual關(guān)鍵字?
答:不可以,抽象類中只能包含抽象方法和抽象訪問(wèn)器。
四、抽象類能被實(shí)例化嗎?
答:不可以。
答:抽象類可以這么寫(xiě):
復(fù)制代碼 代碼如下:
public abstract class A
{
public string getWebUrl()
{
return "jb51.net";
}
public abstract string getWebName();
}
public class B : A
{
public override string getWebName()
{
return "腳本之家";
}
}
運(yùn)行: B b = new B();
Response.Write(b.getWebUrl());
編譯通過(guò)沒(méi)有錯(cuò)誤,而接口本身只能包含成員但不包括具體實(shí)現(xiàn),且抽象函數(shù)只能存在于抽象類中,所以接口中只有方法的簽名,但沒(méi)有具體的實(shí)現(xiàn),且不是抽象函數(shù),例如: C#復(fù)制代碼
interface IA
{
string getWebUrl();
string getWebName();
}
二、接口中的成員是否必須被其子類實(shí)現(xiàn)?
答:接口是抽象類的一個(gè)特例,而抽象函數(shù)都必須被其子類覆蓋實(shí)現(xiàn),接口中的成員也一樣必須被其子類實(shí)現(xiàn)。
三、抽象類中是否可以使用virtual關(guān)鍵字?
答:不可以,抽象類中只能包含抽象方法和抽象訪問(wèn)器。
四、抽象類能被實(shí)例化嗎?
答:不可以。
您可能感興趣的文章:
- .Net WInform開(kāi)發(fā)筆記(三)談?wù)勛灾瓶丶?自定義控件)
- asp.net自定義控件回發(fā)數(shù)據(jù)實(shí)現(xiàn)方案與代碼
- asp.net中使用自定義控件的方式實(shí)現(xiàn)一個(gè)分頁(yè)控件的代碼
- asp.net DropDownList自定義控件,讓你的分類更清晰
- Asp.net 動(dòng)態(tài)加載用戶自定義控件,并轉(zhuǎn)換成HTML代碼
- asp.net 自定義控件實(shí)現(xiàn)無(wú)刷新上傳圖片,立即顯示縮略圖,保存圖片縮略圖
- asp.net自定義控件代碼學(xué)習(xí)筆記
- 關(guān)于兩個(gè)自定義控件的取值問(wèn)題及接口的應(yīng)用
相關(guān)文章
.NET中的狀態(tài)機(jī)庫(kù)Stateless的操作流程
本文給大家介紹了.NET中的狀態(tài)機(jī)庫(kù)Stateless, 使用它我們可以很容易的定義出自己業(yè)務(wù)需要的狀態(tài)機(jī),或者基于狀態(tài)機(jī)的工作流,本文大部分的內(nèi)容都來(lái)自官方Github,有興趣的同學(xué)可以深入研究一下2021-12-12
.Net?Core?使用?TagProvider?與?Enricher?豐富日志的操作代碼
這篇文章主要介紹了.Net?Core?使用?TagProvider?與?Enricher?豐富日志的操作,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2024-03-03
CZGL.ProcessMetrics處理監(jiān)控?cái)?shù)據(jù)的三種方式介紹
這篇文章介紹了CZGL.ProcessMetrics處理監(jiān)控?cái)?shù)據(jù)的三種方式,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-04-04
關(guān)閉子頁(yè)面刷新父頁(yè)面中部分控件數(shù)據(jù)的方法
關(guān)閉子頁(yè)面刷新父頁(yè)面中部分控件數(shù)據(jù),具體的實(shí)現(xiàn)代碼如下,感興趣的朋友可以參考下哈2013-05-05
基于.NET8實(shí)現(xiàn)WinFrom應(yīng)用窗口自動(dòng)縮放功能
這篇文章主要為大家詳細(xì)介紹了如何基于.net8 WinFrom實(shí)現(xiàn)應(yīng)用窗口自動(dòng)縮放功能,文中的示例代碼講解詳細(xì),有需要的小伙伴可以參考一下2025-01-01
Asp.net 基于Cookie簡(jiǎn)易的權(quán)限判斷
基于Cookie簡(jiǎn)易的權(quán)限判斷代碼,需要的朋友可以參考下。2010-01-01
asp.net Repeater取得CheckBox選中的某行某個(gè)值的c#寫(xiě)法
asp.net(c#)利用Repeater取得CheckBox選中行的某個(gè)值的代碼2008-08-08

