2013-04-25 13 views
40

Ora ho due classi AllMethods.cs e caller.cs.Come far chiamare il metodo un altro in classi C#?

Ho alcuni metodi nella classe AllMethods.cs. Voglio scrivere un codice in caller.cs per chiamare un determinato metodo nello AllMethods.cs.

Esempio sul codice:

public class allmethods 
public static void Method1() 
{ 
    // Method1 
} 

public static void Method2() 
{ 
    // Method2 
} 

class caller 
{ 
    public static void Main(string[] args) 
    { 
     // I want to write a code here to call Method2 for example from AllMethods Class 
    } 
} 

Come posso raggiungere questo obiettivo? Qualsiasi aiuto?

Grazie.

risposta

63

Perché il Method2 è statico, tutto ciò che dovete fare è chiamare in questo modo:

public class AllMethods 
{ 
    public static void Method2() 
    { 
     // code here 
    } 
} 

class Caller 
{ 
    public static void Main(string[] args) 
    { 
     AllMethods.Method2(); 
    } 
} 

Se sono in diversi spazi dei nomi si dovrà anche aggiungere lo spazio dei nomi di AllMethods ad caller.cs in un using dichiarazione.

Se si desidera chiamare un metodo di istanza (non statico), è necessario disporre di un'istanza della classe su cui chiamare il metodo. Ad esempio:

public class MyClass 
{ 
    public void InstanceMethod() 
    { 
     // ... 
    } 
} 

public static void Main(string[] args) 
{ 
    var instance = new MyClass(); 
    instance.InstanceMethod(); 
} 

Letture