C#の5つのアクセス修飾子のスコープ例を詳しく解説

零下一度
リリース: 2017-06-29 14:36:23
オリジナル
4798 人が閲覧しました

C# 言語には、public、private、protected、internal、protected Internal の 5 つのアクセス修飾子があります。スコープの範囲は次のとおりです:
アクセス修飾子 説明
public パブリック アクセス。制限なしで。
プライベートアクセス。アクセスは、サブクラスやインスタンスではなく、このクラスのメンバーに制限されます。
保護された保護されたアクセス。アクセスはこのクラスとサブクラスに制限されており、インスタンスにはアクセスできません。
内部内部アクセス。アクセスはこのプロジェクトに限定されており、他の人はアクセスできません。
保護された内部 内部の保護されたアクセス。アクセスはこのプロジェクトまたはサブクラスに制限されており、他のユーザーはアクセスできません。C# メンバー型の変更可能な修飾子と既定の修飾子は次のとおりです。
メンバー型の既定の修飾子は変更可能
enum public none
class private public、protected、internal、 private,
protected external
interface public none
struct private public, external, private
次に、public、private、protected、internal、protected Internal の範囲について例を元にお話しします。
次のコード:

[csharp] view plain copy
 
using System;  
using System.Collections.Generic;  
using System.Text;  
  
namespace AccessModifier  
{  
    public class AccessModifierClass  
    {  
        public string GetPublicString()  
         {  
            return "Public String";  
         }  
  
        protected string GetProtectedString()  
         {  
            return "Protected String";  
         }  
  
         private string GetPrivateString()  
         {  
            return "Private String";  
         }  
  
         internal string GetInternalString()  
         {  
            return "Internal String";  
         }  
  
        protected internal string GetProtectedInternalString()  
         {  
            return "Protected Internal String";  
         }  
  
        void AvailableAccessModifier()  
        {  
         this.GetPublicString();  
         this.GetPrivateString();  
         this.GetInternalString();  
         this.GetProtectedInternalString();  
         this.GetProtectedString();  
        }  
     }  
  
  
    public class TestAccessModifierClass1  
     {  
         void AvailableAccessModifier()  
         {  
             AccessModifierClass item = new AccessModifierClass();  
             item.GetPublicString();  
             item.GetInternalString();  
             item.GetProtectedInternalString();  
         }  
     }  
  
     public class TestAccessModifierClass2 : AccessModifierClass  
     {  
         void AvailableAccessModifier()  
         {  
             AccessModifierClass item = new AccessModifierClass();  
             item.GetPublicString();  
             item.GetInternalString();  
             item.GetProtectedInternalString();  
             base.GetProtectedString();  
         }  
     }  
 }
ログイン後にコピー

AccessModifierClass は 5 つのアクセス修飾子メソッドを持つアクセス修飾子クラスです。AccessModifierClass クラスの AvailableAccessModifier() メソッドがすべてのメソッドにアクセスできることがわかります。
TestAccessModifierClass1 クラスの AvailableAccessModifier() メソッドは、public、Internal、および Protected Internal メソッドにのみアクセスできます。

TestAccessModifierClass2 クラスは AccessModifierClass クラスを継承しているため、その AvailableAccessModifier() メソッドは public、internal、protected、および protected 内部メソッドにアクセスできます。

以上がC#の5つのアクセス修飾子のスコープ例を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!