zoukankan      html  css  js  c++  java
  • C#虚方法

    转自:http://www.cnblogs.com/ArmyShen/archive/2012/09/02/2667816.html

    作用:子类可以对父类中的虚方法进行重写,虚方法是多态特性的一种体现

    C#中的虚方法使用virtual关键字定义

    public virtual void eat();

    override关键字作用是对父类的virtual方法进行重写

    public override void eat();

    代码举例:

    复制代码
    using System;
    using System.Collections;
    
    public class Animal
    {
        public Animal() { }
        public virtual void eat()
        {
    
        }
    }
    
    public class dog:Animal
    {
        public override void eat()
        {
            //如果父类的虚方法中有我们需要的数据,可以在子类的覆盖方法中调用它:
            //base.eat();
            Console.WriteLine("狗吃骨头");
        }
    }
    
    public class cat:Animal
    {
        public override void eat()
        {
            Console.WriteLine("猫吃鱼");
        }
    }
    
    public class panda:Animal
    {
        public override void eat()
        {
            Console.WriteLine("熊猫吃竹子");
        }
    }
    
    public class MainFun
    {
        static void Main()
        {
            Animal[] anim = new Animal[3];
            anim[0] = new dog();
            anim[1] = new cat();
            anim[2] = new panda();
            anim[0].eat();
            anim[1].eat();
            anim[2].eat();
        }
    }
    复制代码
  • 相关阅读:
    c++命名规范与代码风格
    subline的多行游标快捷键
    selenium中的action
    Fiddler 教程(转)
    java.util.NoSuchElementException解决办法
    http协议中的URI
    深入研究java.lang.Runtime类(转)
    深入研究java.lang.Process类(转)
    java调用autoit3脚本
    AutoIT转
  • 原文地址:https://www.cnblogs.com/cugwx/p/4060084.html
Copyright © 2011-2022 走看看