如何在单独的类中调用方法

时间:2011-08-02 10:22:42

标签: c# .net

我想在单独的类中调用方法,我是怎么做到的?该类与当前类相同的项目

6 个答案:

答案 0 :(得分:10)

也许阅读面向对象编程OOP Reading material

答案 1 :(得分:4)

有点模糊,但假设如下:

public class ClassA
{

    public void ClassAMethod()
    {
    }
}

public class ClassB
{

    public void ClassBMethod()
    {
        ClassA classAInstance = new ClassA();
        classAInstance.ClassAMethod();
    }
}

简而言之,您必须实例化具有您要调用的方法的类(除非它是static类),然后通过实例化类调用该方法。

答案 2 :(得分:1)

如果方法是静态的,你可以像这样调用它:

ClassName.MethodName();

如果方法不是静态的,那么您需要先创建一个实例,然后在实例上调用该方法。像这样:

ClassName instance = new ClassName();
instance.MethodName();

显然,如果你的类的构造函数或方法有参数,这会改变,但是应该让你进入正确的球场。

答案 3 :(得分:1)

简单示例:

var objectHoldingMyMethod = new myClassName();
    objectHoldingMyMethod.myMethod();

答案 4 :(得分:1)

有两种方法。如果另一个类是静态的(或者方法是静态的),您可以直接调用它OtherClass.Method() 否则,您将需要该类的实例来调用该方法:

var newInstance = new OtherClass();
newInstance.Method();

但如果您提出这样的问题,我会详细了解面向对象编程的基础知识。

答案 5 :(得分:1)

实例化该类的实例。然后调用该方法。如果方法是静态的,你可以直接调用它。
例如:

public class Class1
{
    public static void PrintHellow()
    {
        Console.WriteLine("Hellow!")
    }

    public void printGoodBy()
    {
        Console.WriteLine("Good by!")
    }

    private void Hidden()
    {
        Console.WriteLine("I am hidden from other classes out there!");
    }
}

static void Main()
{
    Class1.PrintHellow();//this is a static method you can call it directly.

    //Class1.PreintGoodBy();//This is not valid since the method is not static

    Class1 class1Instance = new Class1();
    class1Instance.PrintGoodBy();//this is how to call none static method from a class

    //classInstance.Hidden();//this is not valid call since this method marked as private 
}

另请阅读MSDN:MethodsAccess Modifiers