在c#中有乙個規定:編譯器不允許派生類的可訪問性比其基類更高。也就是說,內部類可以繼承於乙個公共類,但公共類不能繼承於乙個內部類。
1、public 關鍵字是型別和型別成員的訪問修飾符。公共訪問是允許的最高訪問級別。對於訪問公共成員沒有限制。
有關 public 與其他訪問修飾符的比較,請參見可訪問性級別。
示例在下例中,宣告了兩個類:myclass1 和 myclass2。直接從 myclass2 訪問 myclass1 的公共成員 x 和 y。
// protected_public.cs
// public access
using system;
class myclass1
class myclass2
, y = ", mc.x, mc.y); }}
輸出x = 10, y = 15
如果將 public 訪問級別更改為 private 或 protected,將收到錯誤資訊:
'myclass1.y' is inaccessible due to its protection level.
2、protected 關鍵字是乙個成員訪問修飾符。從宣告受保護的成員的類中,以及從宣告受保護的成員的類派生的任何類中都可以訪問該成員。
僅當訪問通過派生類型別發生時,基類的受保護成員在派生類中才是可訪問的。例如,請看以下**段:
class a
class b : a
}語句 a.x =10 將生成錯誤,因為 a 不是從 b 派生的。
結構成員無法受保護,因為無法繼承結構。
對於不是從受保護的成員的類派生的類,引用其中受保護的成員是錯誤的。
有關受保護的成員的更多資訊,請參見 3.5.3 例項成員的受保護訪問。
有關 protected 與其他訪問修飾符的比較,請參見可訪問性級別。
示例在此示例中,類 myderivedc 從 myclass 派生;因此,可以從該派生類直接訪問基類的受保護成員。
// protected_keyword.cs
using system;
class myclass
class myderivedc: myclass
, y = ", mc.x, mc.y); }}
輸出x = 10, y = 15
如果將 x 和 y 的訪問級別更改為 private,編譯器將發出錯誤資訊:
'myclass.y' is inaccessible due to its protection level.
'myclass.x' is inaccessible due to its protection level.
3、private 關鍵字是乙個訪問修飾符。私有訪問是允許的最低訪問級別。私有成員只有在宣告它們的類和結構體中才是可訪問的。
同一體中的巢狀型別也可以訪問那些私有成員。
在定義私有成員的類或結構外引用它會導致編譯時錯誤。
有關 private 和其他訪問修飾符的比較,請參見可訪問性級別。
示例在此例中,employee 類包含乙個公共成員 name 和乙個私有成員 salary。可以直接訪問公共成員,對於私有成員則必須通過公共方法 accesssalary() 訪問。
// private_keyword.cs
using system;
class employee
}class mainclass
}在上面的示例中,如果試圖通過使用如下語句直接訪問私有成員:
double s = e.salary;
將收到錯誤資訊:
'employee.salary' is inaccessible due to its protection level.
另乙個例子:
using system;
class testfirst
public static void main(string args)
",first.s);
second.funsecond();
third.funthird();}}
class testsecond:testfirst //在c#這叫派生
",s);
//d=222.22; //錯誤,不能訪問類testfirst的私有成員
i=222; //正確,允許訪問類testfirst的保護成員}}
class testthird
",c.s);
//錯誤,不能訪問類testfirst的保護成員
//錯誤,不能訪問類testfirst的私有成員}}
C 設定訪問許可權
在c 中有乙個規定 編譯器不允許派生類的可訪問性比其基類更高。也就是說,內部類可以繼承於乙個公共類,但公共類不能繼承於乙個內部類。public 關鍵字是型別和型別成員的訪問修飾符。公共訪問是允許的最高訪問級別。對於訪問公共成員沒有限制。有關 public 與其他訪問修飾符的比較,請參見可訪問性級別。...
C 設定訪問許可權
在c 中有乙個規定 編譯器不允許派生類的可訪問性比其基類更高。也就是說,內部類可以繼承於乙個公共類,但公共類不能繼承於乙個內部類。public 關鍵字是型別和型別成員的訪問修飾符。公共訪問是允許的最高訪問級別。對於訪問公共成員沒有限制。有關 public 與其他訪問修飾符的比較,請參見可訪問性級別。...
Apache訪問許可權設定
本文的httpd版本號為httpd 2.4.4,事先關閉防火牆和selinux。要想實現linux下apache對web頁面的訪問控制許可權設定,主要需要修改的是 etc httpd httpd.conf這個檔案 切記 一旦修改 etc httpd httpd.conf必須重啟httpd服務,否則不...