国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

深入剖析C#繼承機制7

2024-07-21 02:18:20
字體:
來源:轉載
供稿:網友
3、繼承中對使用可訪問性級別的限制

  聲明類型時,最重要的是查看該類型是否必須"至少"與其他成員或類型"具有同樣的可訪問性"。例如,直接基類必須至少與派生類具有同樣的可訪問性。以下聲明將導致編譯器錯誤,因為基類 baseclass 的可訪問性小于 myclass:


class baseclass {...}
public class myclass: baseclass {...} // error

  下表匯總了對使用聲明的可訪問性級別的限制。


上下文 備注
類 類類型的直接基類必須至少與類類型本身具有同樣的可訪問性。
接口 接口類型的顯式基接口必須至少與接口類型本身具有同樣的可訪問性。
委托 委托類型的返回類型和參數類型必須至少與委托類型本身具有同樣的可訪問性。
常數 常數的類型必須至少與常數本身具有同樣的可訪問性。
字段 字段的類型必須與至少字段本身具有同樣的可訪問性。
方法 方法的返回類型和參數類型必須至少與方法本身具有同樣的可訪問性。
屬性 屬性的類型必須至少與屬性本身具有同樣的可訪問性。
事件 事件的類型必須至少與事件本身具有同樣的可訪問性。
索引器 索引器的類型和參數類型必須至少與索引器本身具有同樣的可訪問性。
運算符 運算符的返回類型和參數類型必須至少與運算符本身具有同樣的可訪問性。
構造函數 構造函數的參數類型必須至少與構造函數本身具有同樣的可訪問性。

  示例:以下示例包含不同類型的錯誤聲明。每個聲明后的注釋指示了預期的編譯器錯誤。


using system ;
delegate int mydelegate( ) ;
class b
{ // 定義一個私有的函數:
static int myprivatemethod()
{ return 0 ; }
}
public class a
{ // 字段定義:
public b myfield = new b();// 錯誤: 類型b與a字段a.myfield級別不同
// 構造函數:
public readonly b myconst = new b(); //錯誤: 類型b是僅讀的
//方法:
public b mymethod()
{
return new b();
}
//屬性:
public b myprop
{
set { }
}
public static b operator + (a m1, b m2)
{
return new b();
}
static void main()
{
console.write("compiled successfully");
}
}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 绥江县| 河北区| 新余市| 辽源市| 和平县| 新昌县| 巧家县| 赣榆县| 屯门区| 库尔勒市| 丁青县| 阳信县| 泸溪县| 玉林市| 巴东县| 思茅市| 蕉岭县| 韶关市| 信丰县| 定边县| 株洲市| 安达市| 黑龙江省| 清远市| 皋兰县| 二手房| 通山县| 惠东县| 金秀| 台安县| 九龙坡区| 梓潼县| 新化县| 大田县| 古丈县| 辛集市| 舒兰市| 临湘市| 平安县| 阿鲁科尔沁旗| 丹江口市|