C# 細節(2)

本文通过一个具体的C#示例介绍了protected修饰符的作用范围和特性。在继承关系中,即使子类拥有相同的protected成员,它们也彼此独立,不受其他子类的影响。此特性有助于理解如何在继承体系中管理成员变量。

protected 修飾符,要注意,子類所繼承的protected,是屬於自己的,與其他不相干。

A 父類,B子類,C子類

不管B,C如何修改protected變量,B和C互不影響,如:

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
       
        static void Main(string[] args)
        {
            B b = new B();
            C c = new C();

            //////////////////////

            不管下面誰先賦值,輸出結果不變

            c.setv("c");
            b.setv("b");

           ////////////////////////
            Console.Write(c.cv);
            Console.Write(b.bv);

        }
    }

    class A
    {
        protected string s;
    }
    class B : A
    {
        internal void setv(string a)
        {
            s = a;
        }

    
        public string bv
        {
           get{return s;}
        }
    }
    class C : A
    {
        internal void setv(string a)
        {
            s = a;
        }

        public string cv
        {
            get { return s; }
        }
    }
}

 

 

转载于:https://www.cnblogs.com/Mayvar/archive/2012/02/24/wanghonghua_201202241025.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值