zoukankan      html  css  js  c++  java
  • 虚方法与重写方法

    在c#中,继承,虚方法,与重写方法结合在一起才能实现多态性

    虚方法是指允许其子类重新定义的方法的方法,在声明时,需要使用virtual修饰符, 不能是私有的

    public virtual int add(int a,int b)

    {

    return a+b;

    }

    重写方法也称覆盖,是在派生类使用override修饰符重写基类带有virtual修饰符的虚方法

    class Base()

    {

    public virtual string GetName()

    {

    return "父级名称";

    }

    }

    calss SunClass:Base

    {

    public override string GetName()

    {

    return "子级名称";

    }

    }

    例子:

    class Program
        {
            static void Main(string[] args)
            {
                child_override co = new child_override();
                Child_New cw = new Child_New();
                Console.WriteLine("v_m方法重写结果1:" + co.v_m());
                Console.WriteLine("v_m方法隐藏结果1:" + cw.v_m());
                Console.WriteLine("c方法隐藏结果1:" +cw.m());
                Parent pco = co as Parent;
                Parent pcw = cw as Parent;
                Console.WriteLine("v_m方法重写结果2:" + pco.v_m());
                Console.WriteLine("v_m方法隐藏结果2:" + pcw.v_m());
                Console.WriteLine("c方法隐藏结果2:" + pcw.m());
                Console.Read();
            }
        }
    
        public class Parent
        {
            public string m()
            {
                return "一个方法";
    
            }
            public virtual string v_m()
            {
                return "一个虚方法";
            }
        }
        public class child_override : Parent
        {
            public override string v_m()
            {
                return "重写虚方法";
            }
        }
        public class Child_New : Parent
        {
            public new string m()
            {
                return "隐藏一般方法";
            }
            public override string v_m()
            {
                return "隐藏虚方法";
            }
    
        }
  • 相关阅读:
    spring boot1
    部署 OpenStack VirtualBox
    SecureCRT连接虚拟机(ubuntu)配置
    深度优先算法和广度优先算法
    网上学习编程的七个趋势
    AI方向
    sql
    PyQt4入门
    “贪吃蛇”
    SecureCRT 专题
  • 原文地址:https://www.cnblogs.com/zhang123/p/2990855.html
Copyright © 2011-2022 走看看