派生类中new方法和override重载方法的区别

来源:互联网 发布:百合网淘宝女店主 编辑:程序博客网 时间:2024/05/16 10:48

简单介绍一下,派生类中new方法和override重载方法的区别:
1、new 方法的使用:
public class Base01
{
public void GetMethodName()
{
Console.WriteLine(“调用了 Base01 Class Method!”);
}
}

public class Derive01 : Base01{    public new void GetMethodName()    {        Console.WriteLine("调用了 Derive01 Class new Method!");    }    public void GetBaseMethod()    {        base.GetMethodName();    }}

class Program
{
static void Main(string[] args)
{

        Base01 base01 = new Derive01();        base01.GetMethodName();        Derive01 derive01 = new Derive01();        derive01.GetMethodName();        derive01.GetBaseMethod();        Console.ReadKey();    }}运行结果,如图:

这里写图片描述

2、override方法的使用

public class Base02{    public virtual void GetMethodName()    {        Console.WriteLine("调用了 Base01 Class Method!");    }}public class Derive02 : Base02{    public override void GetMethodName()    {        Console.WriteLine("调用了 Derive01 Class new Method!");    }    public void GetBaseMethod()    {        base.GetMethodName();    }}class Program{    static void Main(string[] args)    {           Base02 base02 = new Derive02();        base02.GetMethodName();        Derive02 derive02 = new Derive02();        derive02.GetMethodName();        derive02.GetBaseMethod();        Console.ReadKey();    }}  运行结果,如图:

这里写图片描述