如何在派生类中调用、访问基类的公共成员

本文关键字:基类 访问 成员 调用 派生 | 更新日期: 2023-09-27 18:16:56

我有3个具体的类,命名为ClassA(即内置的System.Web.UI.Page类),ClassB和ClassC(见下面的代码)。类c是类b的派生类,而类b又是类a的派生类。类b有自己的成员。我的问题是ClassC如何调用或访问ClassB的成员(公共属性,公共方法)?如何在ClassC的源代码中解决类的作用域以避免歧义?提前谢谢。

一些代码:

// ClassA = System.Web.UI.Page
public class System.Web.UI.Page {
    // built-in class
}
public class ClassB : System.Web.UI.Page {
   // some own properties
   public bool IsUserLoginNameVisible { get; set; }
   // some own methods
   public void GetLoginUsers()
   {
   }
}
public class ClassC : ClassB {
   public int NumberOfLoginUsers()
   {
       // how can I invoke method "GetLoginUsers()" from ClassB in here?
       // base.GetLoginUsers() ???
   }
   public bool CheckToSeeUserLoginNameVisible()
   {
      // how can I access property "IsUserLoginNameVisible" from ClassB in here?
      // base.IsUserLoginNameVisible ???
   }
}

如何在派生类中调用、访问基类的公共成员

派生类从其基类继承所有可访问的成员。

你可以像调用其他实例方法一样调用它们。

base关键字将强制调用解析到(直接)基类的定义,即使您的类遮蔽了它,或者您的或派生类覆盖了它。