首页 > Windows开发 > 详细

c# 重写

时间:2018-04-17 15:33:09      阅读:171      评论:0      收藏:0      [点我收藏+]

  a.重写父类的方法要用到override关键字(具有override关键字修饰的方法是对父类中同名方法的新实现)

 

     b.要重写父类的方法,前提是父类中该要被重写的方法必须声明为virtual或者是abstract类型。给父类中

     要被重写的方法添加virtual关键字表示可以在子类中重写它的实现。(注意:C#中的方法默认并不是

     virtual类型的,因此要添加virtual关键字才能够被重写)

 

     C.virtual关键字用于将方法定义为支持多态,有virtual关键字修饰的方法称为“虚拟方法”

      [访问修饰符] virtual [返回类型] 方法名(参数列表)

     {

     //虚拟方法的实现,该方法可以被子类重写

     }

namespace ConsoleApplication1
{
    class Employee
    {
        public Employee()
        {
            Console.WriteLine("父类的构造方法");
        }
        public virtual void EmpInfo()
        {
            Console.WriteLine("父类的虚拟方法");
        }
    }
    class DervEmployee : Employee
    {
        public DervEmployee()
        {
            Console.WriteLine("子类的构造方法");
        }
        public override void EmpInfo()
        {
            base.EmpInfo();//base关键字将在下面拓展中提到
            Console.WriteLine("子类的重写方法");
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            DervEmployee objDervEmployee = new DervEmployee();
               objDervEmployee.EmpInfo();
                //注意:objDervEmployee派生类的实例是赋给Employee类的objEmployee的引用,
                // 所以objEmployee引用调用EmpInfo()方法时 还是调用DervEmployee类的方法
               Employee objEmployee = new Employee();
               objEmployee.EmpInfo();
        }
    }
}

技术分享图片

 

c# 重写

原文:https://www.cnblogs.com/jesssey/p/8866945.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!