使用new关键字屏蔽基类成员

当某个基类方法不适用于派生类时,我们在子类中重新定义该方法并使用new关键字屏蔽掉

示例:

 /// <summary>

    /// 通过用与基类成员名称相同的成员来屏蔽基类成员。
    /// 要点:
    /// 1.要屏蔽一个继承的数据成员,需要声明一个新的相同类型的成员,并使用相同的名称。
    /// 2.通过在培生累中声明新的带有相同签名的函数成员,可以隐藏或屏蔽继承的函数成员。请记住,签名由名称和参数列表组成,不好看返回类型。
    /// 3.要让比以前知道你再故意屏蔽继承的成员,使用new修饰符,否则,程序可以成功编译,但编译器会警告你隐藏了一个继承的成员。
    /// 4.页可以屏蔽静态成员。
    /// 
    /// </summary>
    /// 
    class SomeClass
    {
        public string Field1 = "SomeClass";


        public void Method1(string value)
        {
            Console.WriteLine("SomeClass.Method1:   {0}", value);
        }
    }
    class OtherClass : SomeClass
    {
        //屏蔽基类成员
        public new string Field1 = "OtherClass";


        //屏蔽基类成员
        public new void Method1(string value)
        {
            Console.WriteLine("OtherClass.Method1:   {0}", value);
        }
    }
    class Program
    {
        static void Main(string[] args)
        {


            OtherClass otherClass = new OtherClass();
            Console.WriteLine(otherClass.Field1);
            otherClass.Method1(otherClass.Field1);
            Console.ReadLine();
        }
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值