温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C#中的继承是什么

发布时间:2020-12-05 10:02:21 来源:亿速云 阅读:174 作者:小新 栏目:编程语言

这篇文章给大家分享的是有关C#中的继承是什么的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。

继承是C#中的一个重要概念,继承是一种定义父类和子类的概念,子类继承父类的方法和属性,但同时,如果需要,子类还可以定义自己的方法。

现在让我们看看如何在代码中加入继承的概念。

步骤1)第一步是更改Tutorial类的代码,在此步骤中,我们将以下代码添加到Tutorial.cs文件中。

C#中的继承是什么

我们现在需要将“protected”的访问修饰符添加到TutorialID和TutorialName字段,只有拥有此访问修饰符时,子类才能使用父类的字段。

步骤2)第二步是添加我们的新子类,这个类的名称将是“Guru99Tutorial”。在此步骤中,我们将以下代码添加到Tutorial.cs文件中。代码应放在Tutorial类定义之后。

C#中的继承是什么代码说明:

第一步是创建Guru99Tutorial子类,我们还需要提一下,这个类将成为Tutorial类的子类。

接下来,我们定义一个名为RenameTutorial,它将用于重命名TutorialName字段,此方法接受包含教程新名称的字符串变量。

然后,我们将参数pNewName分配给TutorialName字段。

注意: -即使我们没有在“Guru99Tutorial”类中定义TutorialName字段,我们仍然可以访问此字段。这是因为“Guru99Tutorial”是Tutorial类的子类。因为我们将Tutorial类的字段设置为受保护,所以可以通过此类访问它们。

步骤3)最后一步是修改我们的Program.cs文件,在我们的控制台应用程序中,我们将创建一个Guru99Tutorial类的对象。有了这个对象,我们将调用RenameTutorial。然后,我们将在GetTutorial的帮助下显示TutorialName字段。

{
 class Tutorial
 {
  protected int TutorialID; 
  protected string TutorialName;
  
  public void SetTutorial(int pID,string pName) 
  {
   TutorialID=pID;
   TutorialName=pName;
  }
  
  public String GetTutorial()
  {
   return TutorialName;
  }
 }
  class Guru99Tutorial:Tutorial
  {
   public void RenameTutorial(String pNewName)
   {
    TutorialName=pNewName;
   }
  
  static void Main(string[] args) 
  {
   Guru99Tutorial pTutor=new Guru99Tutorial();
   
   pTutor.RenameTutorial(".Net by Guru99");
    
   Console.WriteLine(pTutor.GetTutorial());
    
   Console.ReadKey(); 
  }
 }
}

第一步是为Guru99Tutorial类创建一个对象。这是通过'new'关键字完成的。请注意,这次我们没有创建Tutorial类的对象。

我们使用Guru99Tutorial类的RenameTutorial方法来更改TutorialName字段。我们将字符串“.Net by Guru99”传递给RenameTutorial。

然后我们调用GetTutorial。请注意,即使Guru99Tutorial类中未定义此方法,我们仍然可以访问。然后,GetTutorial的输出将通过Console.WriteLine显示到控制台。

如果正确输入上述代码并且程序执行成功,将显示以下输出。

输出:

C#中的继承是什么

从输出中,我们可以清楚地看到TutorialName字段被重命名为“.Net by Guru99”。这是由子类调用的RenameTutorial方法实现的。

感谢各位的阅读!关于C#中的继承是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI