博客
关于我
夜光带你走进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/

    你可能感兴趣的文章
    python和java哪个更值得学——来自知乎高赞回答
    查看>>
    python和c混合编程 github_在pycharm中使用git版本管理以及同步github的方法
    查看>>
    python命名空间更改_Python模块xml.etree.ElementTree自动修改xml命名空间键
    查看>>
    Python命名中尾随下划线有什么好处?
    查看>>
    Python启动脚本
    查看>>
    Python听写汇总结果
    查看>>
    python吊打Excel?屁!那是你不会用!
    查看>>
    Python合并两张图片 | 先叠透明度再合并 (附Demo)
    查看>>
    python各进制的表述与转换
    查看>>
    python各种库安装
    查看>>
    python可视化matplotlib_如何使用Python中最强大的可视化工具Matplotlib?
    查看>>
    python可维护性_使用这7大神器,让你的Python 代码更容易于维护
    查看>>
    Python只运行一次while循环
    查看>>
    python变量的详细教程_Python零基础入门教程之语法入门[变量](第二期)
    查看>>
    Python变量命名方法-ChatGPT4o作答
    查看>>
    Python变量与运算符
    查看>>
    Python变量/运算符/函数/模块/string
    查看>>
    python发送邮件的时候出现 error (535, b‘5.7.3 Authentication unsuccessful‘) 解决方法
    查看>>
    python系列【仅供参考】:python flask框架 debug功能
    查看>>
    python发送notes邮件_使用python在Lotus Notes中发送邮件
    查看>>