博客
关于我
夜光带你走进C#语言 基础版本(50)
阅读量:290 次
发布时间:2019-03-01

本文共 1268 字,大约阅读时间需要 4 分钟。

夜光双眸间,一个年轻人低声自语道:“所学到的任何有价值的知识,往往来自于自学。天才并非与生俱来,而是终身学习的结果。不知道而假装知道才是真正可怕的。”

在技术领域,虚方法和隐藏方法是面对对象类型问题时常用的手法。它们的区别在于调用方式及结果,这一点至关重要。

以下是通过代码示例说明两者的区别:

using System;namespace GeniusTest01{    class Enemy    {        public void Move()         {             Console.WriteLine("调用了Enemy的Move方法");         }        public virtual void Attack()         {             Console.WriteLine("敌人攻击");         }    }    class Boss : Enemy    {        public override void Attack()         {             Console.WriteLine("BOSS攻击");         }        public new void Move()         {             Console.WriteLine("BOSS移动");         }    }    public class Class86    {        static void Main(string[] args)        {            // 隐藏方法的调用演示            Boss oneEnemy = new Boss();            oneEnemy.Move(); // 使用子类类型声明调用,执行子类的Move方法            Enemy twoEnemy = new Boss();            twoEnemy.Move(); // 使用父类类型声明调用,执行父类的Move方法            // 虚方法的调用演示            Enemy threeEnemy = new Enemy();            threeEnemy.Attack(); // 使用父类实例化,调用虚方法的父类实现            Enemy fourEnemy = new Boss();            fourEnemy.Attack(); // 使用子类实例化,调用虚方法的子类实现        }    }}

通过上述代码可以看出:

  • 隐藏方法的调用:使用子类类型声明时,会调用子类的方法;
  • 虚方法的调用:使用子类实例时,会调用子类的方法;使用父类实例时,会调用父类的方法。
  • 这种理解对于代码的维护和扩展至关重要。在实际开发中,明确调用目标是保证代码的稳定性和可维护性。

    转载地址:http://wxdo.baihongyu.com/

    你可能感兴趣的文章
    Objective-C实现Heap堆算法(附完整源码)
    查看>>
    Objective-C实现hexagonal numbers六边形数算法(附完整源码)
    查看>>
    Objective-C实现hidden layers neural network浅层神经网络算法(附完整源码)
    查看>>
    Objective-C实现highest response ratio next高响应比优先调度算法(附完整源码)
    查看>>
    Objective-C实现hill climbing爬山法用来寻找函数的最大值算法(附完整源码)
    查看>>
    Objective-C实现histogram stretch直方图拉伸算法(附完整源码)
    查看>>
    Objective-C实现Hopcroft算法(附完整源码)
    查看>>
    Objective-C实现horizontal projectile motion平抛运动算法(附完整源码)
    查看>>
    Objective-C实现hornerMethod霍纳法算法(附完整源码)
    查看>>
    Objective-C实现Horn–Schunck光流算法(附完整源码)
    查看>>
    Objective-C实现Http Post请求(附完整源码)
    查看>>
    Objective-C实现http下载文件 (附完整源码)
    查看>>
    Objective-C实现Http协议下载文件(附完整源码)
    查看>>
    Objective-C实现huffman哈夫曼编码算法(附完整源码)
    查看>>
    Objective-C实现ID3贪心算法(附完整源码)
    查看>>
    Objective-C实现IIR 滤波器算法(附完整源码)
    查看>>
    Objective-C实现IIR数字滤波器(附完整源码)
    查看>>
    Objective-C实现insertion sort插入排序算法(附完整源码)
    查看>>
    Objective-C实现integer partition整数分区算法(附完整源码)
    查看>>
    Objective-C实现integerPartition整数划分算法(附完整源码)
    查看>>