簡體   English   中英

c#靜態類字段和具有相同名稱的參數

[英]c# static class field and parameter with same name

由於this.name無法訪問具有相同名稱的字段,如靜態類中的方法參數,我正在尋找一種方法。

作為一個例子,我想這樣做:

static class test
{
    private static string aString;
    public static void method(string aString)
    {
        // aString (field) = aString (parameter)
    }
}

采用:

test.Astring = x;

即用類名替換 ,在這種情況下測試

static class test
{
    private static string Astring="static";
    public static void method(string Astring)
    {
        string passedString = Astring; // will be the passed value
        string staticField = test.Astring; //  will be static  
    }
}

如果我們調用像test.method("Parameter");這樣的方法test.method("Parameter"); staticField的值為staticpassedString的值為Parameter

關鍵字this表示類的當前實例; 無法通過實例訪問靜態字段,您應該使用類名來訪問靜態字段。

注意: - 但請在命名變量時注意 避免在同一個班級中給出同名。 如果您像下面這樣定義類,那將是最好的

static class test
    {
        private static string StaticAstring="static";
        public static void method(string passedAstring)
        {
            string staticField = StaticAstring; // will be static 
            string passedString = passedAstring; // will be the passed value  
        }
    }

暫無
暫無

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

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