⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 10-3.txt

📁 C#实验报告 C#实验报告 C#实验报告 C#实验报告 C#实验报告 C#实验报告 C#实验报告
💻 TXT
字号:
base 关键字用于从派生类中访问基类的成员: 

调用基类上已被其他方法重写的方法。 
指定创建派生类实例时应调用的基类构造函数。 
基类访问只能在构造函数、实例方法或实例属性访问器中进行。

从静态方法中使用 base 关键字是错误的。

示例
在本例中,基类 Person 和派生类 Employee 都有一个名为 Getinfo 的方法。通过使用 base 关键字,可以从派生类中调用基类上的 Getinfo 方法。

// keywords_base.cs
// Accessing base class members
using System;
   public class Person 
   {
      protected string ssn = "444-55-6666";
      protected string name = "John L. Malgraine";

      public virtual void GetInfo() 
      {
         Console.WriteLine("Name: {0}", name);
         Console.WriteLine("SSN: {0}", ssn);
      }
   }
   class Employee: Person 
   {
      public string id = "ABC567EFG";

      public override void GetInfo() 
      {
         // Calling the base class GetInfo method:
         base.GetInfo();
         Console.WriteLine("Employee ID: {0}", id);
      }
   }

class TestClass {
   public static void Main() 
   {
      Employee E = new Employee();
      E.GetInfo();
   }
}
输出
Name: John L. Malgraine
SSN: 444-55-6666
Employee ID: ABC567EFG
有关其他示例,请参见 new、virtual 和 override。

示例
本示例显示如何指定在创建派生类实例时调用的基类构造函数。

// keywords_base2.cs
using System;
public class MyBase
{
   int num;

   public MyBase() 
   {
      Console.WriteLine("in MyBase()");
   }

   public MyBase(int i )
   {
      num = i;
      Console.WriteLine("in MyBase(int i)");
   }

   public int GetNum()
   {
      return num;
   }
}

public class MyDerived: MyBase
{
   // This constructor will call MyBase.MyBase()
   public MyDerived() : base()
   {
   }

    // This constructor will call MyBase.MyBase(int i)
   public MyDerived(int i) : base(i)
   {
   }

   public static void Main() 
   {
      MyDerived md = new MyDerived();
      MyDerived md1 = new MyDerived(1);
   }
}
输出
in MyBase()
in MyBase(int i)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -