zoukankan      html  css  js  c++  java
  • 9 abstract 和 Virtual 之间的差别


    (1) abstract方法没有详细的实现。同一时候必须被覆写

    (2) 虚(Virtual)方法能够没有详细的实现,也不一定必须覆写(虚方法定义时,能够没有详细的实现代码,可是必须创建方法体:即必须有方法的左右花括号)。

    (3) 抽象方法不能够使用base.method()方式调用,可是虚方法是能够的


    //定义一个抽象方法
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace MVATwentyQuestions
    {
        abstract class absClass
        {
            public abstract void DisplayValue(string value);
        }
    }
    
    //在抽象类的子类中覆写抽象方法
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace MVATwentyQuestions
    {
        class absClassInherited : absClass
        {
            override public void DisplayValue(string value)
            {
                Console.WriteLine(value);
            }
        }
    }
    
    //定义一个虚方法
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace MVATwentyQuestions
    {
        class virtClass
        {
            public virtual void DisplayValue(string value)
            {
                Console.WriteLine(value);
            }
        }
    }
    
    //在子类中覆写虚方法
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace MVATwentyQuestions
    {
        class virtClassInherited : virtClass
        {
            public override void DisplayValue(string value)
            {
                Console.WriteLine(value.ToUpper());
            }
        }
    }


  • 相关阅读:
    笨办法41学会说面向对象【我有新书啦!!!
    pip安装及使用
    Office相关
    python各种学习链接
    3000问
    python2代码批量转python3
    啊——回来了_(:з」∠)_
    停更!
    win10 adb(Android Debug Bridge)导出日志
    docker镜像管理基础操作
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/5133184.html
Copyright © 2011-2022 走看看