2010-11-03 69 views
7

我在類文件中有許多類,我希望它們都能訪問相同的全局方法來保存重複的代碼。問題是,我似乎無法從我的文件中的另一個類訪問方法 - 有什麼想法?從C#中的另一個類訪問方法

所以我的Class1.cs佈局與此類似:

public class Job1 
{ 
    public Job1() 
    { 

    } 
} 

public class Methods 
{ 
    public static void Method1() 
    { 
     //Want to access method here from Job1 
    } 
} 
+1

您是否嘗試過'Methods.Method1()'? – strager 2010-11-03 19:20:17

+2

國際海事組織你必須閱讀一些oop文章。 – 2010-11-03 19:24:40

+0

似乎你是OOP的新手。不是壞事,每個人都必須從某個地方開始。在編寫代碼的同時閱讀OOP書籍以獲得對所有OOP語言非常重要的基礎知識,您都會很樂意。 – xbonez 2010-11-03 19:28:09

回答

10

你需要指定他們在課堂上是這樣的:

public Job1() 
{ 
    Methods.Method1() 
} 

如果該類Job1是與Methods不同的命名空間,則需要添加using子句,或者在調用方法時指定命名空間。 Name.Space.Methods.Method1()

+0

啊,我覺得非常愚蠢。當我嘗試過之前,肯定沒有工作。好吧,現在工作很好 - 歡呼夥伴! – Chris 2010-11-03 21:06:16

1

其實。公共Job1(){}是一個構造函數,而不是一個方法。它可以通過創建JOB1類的對象從主類中調用。下面添加以下代碼:

public static void method1() 
{ 
Job1 j1=new Job1(); 
} 

構造可以通過創建一個對象來corressponding類中調用....

0

要訪問其他類的方法,這些方法必須是靜態與公共訪問修飾符。

static - 不綁定到類的實例,但被所有其他實例共享。

private - 數據只能從同一個類中訪問。

public - 數據可以從其他類訪問,但必須被引用。