重写和重载的区别

更新时间:2023-07-23 03:14:20 阅读: 评论:0

重写和重载的区别
  接触过编程代码的⼈都知道重载和重写,但是很多⼈来说,总是不能很好的区别它们,其实区别它们很容易,只要你常常练习编代码,不久就能从本质上将他们区分开。
  ⼩编给你举⼀下代码例⼦,可以通过代码了解⼀下
  OverrideNew.cs
  namespace NET.MST.Third.OverrideNew
  {
  public class OverrideNew
  {
  static void Main(string[] args)
  {
  //测试重写和隐藏的功能
反对校园暴力  OverrideBa b = new OverrideBa();
  NewBa nb = new NewBa();
  Console.WriteLine(ob.ToString() + ":" + ob.GetString());
  Console.WriteLine(nb.ToString() + ":" + nb.GetString());
烤箱做面包的家庭做法  Console.WriteLine("\r\n");
  //重写和隐藏的区别
  Ba bb = ob as Ba;
  Ba nbb = nb as Ba;
  Console.WriteLine(obb.ToString() + ":" + obb.GetString());
  Console.WriteLine(nbb.ToString() + ":" + nbb.GetString());
  Console.Read();
  }
  }
  //基类
  class Ba
  {
  public virtual string GetString()
  {
  return "我是基类";
  }
  }
成都好  //重写
  class OverrideBa : Ba
  {
  public override string GetString()
  {
自编诗歌  return "我重写了基类";
  }
  }
  //隐藏
  class NewBa : Ba
  {
  public new virtual string GetString()
深层补水
  {
  return "我隐藏了基类";
  }
  }
打喷嚏是什么原因引起的
  }
  }
  //重写
  class OverrideBa : Ba
  {
  public override string GetString()
白种人上帝的骄子
  {
  return "我重写了基类";
  }
  }
  //隐藏
  class NewBa : Ba
  {
  public new virtual string GetString()
  {
计量器具管理制度  return "我隐藏了基类";
  }
  }
  }
  看完了上⾯的代码,是不是能理解重载和重写了呢,下⾯⼩编再给你说明⼀下重载和重写的定义。
  重载
  同⼀个作⽤域内发⽣(⽐如⼀个类⾥⾯),定义⼀系列同名,但是⽅法的参数列表不同。这样才能通过传递不同的参数来决定到底调⽤哪⼀个。⽽返回值类型不同是不能构成重载的。
  重写
  继承时发⽣,在⼦类中重新定义⽗类中的⽅法,⼦类中的⽅法和⽗类的⽅法是⼀样的。

本文发布于:2023-07-23 03:14:20,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/1111990.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:重写   重载   代码   参数   隐藏
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图