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

首頁 > 編程 > C# > 正文

淺談C#基礎之類的訪問修飾符

2020-01-24 03:31:07
字體:
來源:轉載
供稿:網友

1.類中成員的訪問修飾符

方位修飾符就是確定該成員能夠訪問(使用)的區域。C#中常用的有如下修飾符:pubic(公有)、private(私有)、internal(內聯)、protected(受保護)。舉例說明各個修飾符的限制區域。   

復制代碼 代碼如下:

class TestClass
    {
        public int a = 0;
        private int b = 0;
        protected int c = 0;

pulic  static  int d=0;
    }    


TestClass類中變量a是公有類型,可以在類外方位,即類實例化后可以使用a;變量b只能在類內訪問,即類內部的函數可以使用b;變量c則是TestClass繼承類可以使用。
復制代碼 代碼如下:

    class B
    {
        private void st()
        {
           TestClass tec = new TestClass();
            int aa = tec.a;   //right
            int bb = tec.b;  //wrong
            int cc = tec.c    //wrong
        }

   TestClass 實例化對象tec,tec可以訪問a但不能訪問b、c。那么什么情況下可以訪問b、c呢?
復制代碼 代碼如下:

    class C:TestClass
    {
        private void st()
        {
           TestClass tec = new TestClass();
            C bo = new C();
            int aa = tec.a;
            int bb = tec.b;//wrong
            int cc = tec.c;//wrong
            int tt = bo.c;
        }
    }

先說c。c是受保護類型,其繼承類C可以訪問。是類B實例化對象仍然不可以訪問。但是B內部可以訪問c。如下面所示,類內訪問類內無限制。
復制代碼 代碼如下:

    class TestClass
    {
        public int a = 0;
        private int b = 0;
        protected int c = 0;

pulic  static  int d=0;
        private void os()
        {
            int a1 = a;
            int a2 = b;
            int a3 = c;
        }
    }


B繼承之后,c就變為private。也就說B的繼承類無法訪問c;如下所示,D中無法訪問c。
復制代碼 代碼如下:

    class D : B
    {
        private void st()
        {
            B bo = new B();
            int dd = bo.c;//wrong訪問受限制
        }
    }

static修飾符表明該字段或方法是類所有,不是某個具體對象的。TestClass類不同實例化時a、b、c的值不同,但d是相同的。如果說a、b、c相當于每個人在哪個省,那么d表明大家都在中國。
復制代碼 代碼如下:

    class B:TestClass
    {
        TestClass tec = new TestClass();
        int bb = tec.a;//wrong 錯誤原因是因為字段的初始值引用了非靜態字段
        int cc = TestClass.d;
        private void st()
        {

            B bo = new B();
            int aa = tec.a;
            int tt = bo.c;
        }
    }

小結:

puclic修飾:類內,類外皆可;private:內部;protect:類內即其派生類。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 垫江县| 漾濞| 阿瓦提县| 文水县| 昌乐县| 新泰市| 巴塘县| 邵阳县| 讷河市| 独山县| 五峰| 大庆市| 苏州市| 湖南省| 鄯善县| 怀柔区| 景德镇市| 济南市| 长治县| 油尖旺区| 嘉善县| 博客| 申扎县| 曲松县| 光泽县| 尉犁县| 临沂市| 东城区| 玉山县| 嘉鱼县| 清徐县| 维西| 谢通门县| 星子县| 岳西县| 方正县| 樟树市| 唐山市| 汪清县| 临朐县| 亚东县|