簡體   English   中英

使用派生的 class 對象訪問基本 class 方法

[英]Access the base class method with derived class objects

如果我正在使用陰影,並且我想使用派生的 class 對象訪問基本 class 方法,我該如何訪問它?

使用base關鍵字:

base.MethodOnBaseClass();

base關鍵字用於從派生的 class 中訪問基 class 的成員:

首先將派生的 class object 轉換為基礎 class 類型,如果調用方法,它會調用基礎 class 方法。 請記住,它僅在派生的 class 方法被隱藏時才有效。

例如,

觀察下面的注釋行:

public class BaseClass
{
    public void Method1()
    {
        string a = "Base method";
    }
}

public class DerivedClass : BaseClass
{
    public new void Method1()
    {
        string a = "Derived Method";
    }
}

public class TestApp
{
    public static void main()
    {
        DerivedClass derivedObj = new DerivedClass();
        BaseClass obj2 = (BaseClass)derivedObj; // cast to base class
        obj2.Method1();  // invokes Baseclass method
    }
}

您限定方法調用:

base.foo();
DerivedClass derivedObj = new DerivedClass(); 
(derivedObj as BaseClass).Method1(); // cast to base class with method invoke

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM