2011-03-07 91 views
3

我可以寫什麼字來訪問類內的靜態函數?像自我::在PHP中?C#中靜態類訪問

+0

你的問題還不清楚。請舉例說明你想要做什麼,從你想要打電話到哪裏。 – 2011-03-07 10:41:18

+0

狀態函數是在同一個類還是不同的類中定義的?你試過什麼了? – ChrisF 2011-03-07 10:41:48

+0

在同一類中 – kusanagi 2011-03-07 10:43:22

回答

2

只需使用StaticMethodName(...)(在定義靜態方法的類內)或ClassName.StaticMethodName(...)

+0

'.MethodName'將不起作用; # – jeroenh 2011-03-07 10:44:46

+0

@jeroenh:我修正了錯字〜6分鐘前:) – 2011-03-07 10:47:19

4

你只需要使用的類型名稱:

static class Test 
{ 

    public static string GetSomething() 
    { 
    return "Something"; 
    } 

} 

string s = Test.GetSomething(); 

如果您在類是已經你只需要調用的方法。

+0

是的,但是課堂上它看起來並不漂亮 – kusanagi 2011-03-07 10:42:20

+0

你是什麼意思,不是很漂亮?如果在類中,將類型名稱從類中刪除,則只需調用GetSomething()等。 – Lloyd 2011-03-07 10:44:16

+0

我想要顯示調用函數屬於當前類,它稱爲 – kusanagi 2011-03-07 10:49:46

2

C#中沒有這樣的關鍵字。您需要使用類名稱,例如

MyClass.StaticMember 
+1

從類內部,你不需要爲靜態方法指定類名(儘管這不是一個錯誤)。 – 2011-03-07 10:42:52

0

寫上班的名字。 例如:

public static class MyClass { 
public static void HelloWorld(){} 
} 

而且使用它像:

0

如果您的靜態類被命名爲等SampleClass,您可以SampleClass.YourFunction訪問它的函數(); 。如果你想在其他靜態方法中調用一個函數,只需使用該函數的名稱即可。

0
public class Discover 
{ 
    static int myVariable = 1; 

    public Discover() 
    { 
     var test = myVariable; 
    } 
}