欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

重写、隐藏基类(new, override)的方法

程序员文章站 2023-12-01 13:32:52
复制代码 代码如下:public class father    {      &...

复制代码 代码如下:

public class father
    {
        public void write() {
            console.writeline("父");
        }
    }

    public class mother
    {
        public virtual void write()
        {
            console.writeline("母");
        }
    }

    public class boy : father
    {
        public new void write()
        {
            console.writeline("子");
        }
    }

    public class girl : mother
    {
        public override void write()
        {
            console.writeline("女");
        }
    }


复制代码 代码如下:

static void main(string[] args)
        {
            father father = new boy();
            father.write();

            boy boy = new boy();
            boy.write();


            mother mother = new mother();
            mother.write();

            girl girl = new girl();
            girl.write();

            console.readline();
        }


输出:




添加调用父方法:

复制代码 代码如下:

public class boy : father
    {
        public new void write()
        {
            base.write();
            console.writeline("子");
        }
    }

    public class girl : mother
    {
        public override void write()
        {
            base.write();
            console.writeline("女");
        }
    }


输出:






可见,在程序运行结果上new 和override是一样的。