有没有办法在C#中的多个类中使用变量?

时间:2011-05-13 15:31:03

标签: c# variables

如果我在一个类文件中定义一个变量,有没有办法在另一个类中访问同一个变量?

4 个答案:

答案 0 :(得分:5)

class Class1
{
    static const int myInteger = 256;
}

class Class2
{
    private void myMethod()
    {
        int i = Class1.myInteger;
        //i is now 256.
    }
}

您可以在第一个类(Class1)的最顶层范围内将变量声明为static。有关static成员的详细信息,请参阅MSDN文章:

http://msdn.microsoft.com/en-us/library/79b3xss3(v=vs.80).aspx

答案 1 :(得分:1)

是的,如果您有对第一类对象的引用。或者,如果该变量是第一个类的公共静态成员,在这种情况下,您不需要对象引用。

答案 2 :(得分:0)

是的,通过财产提供访问权限。

http://msdn.microsoft.com/en-us/library/x9fsa0sw%28v=VS.71%29.aspx

答案 3 :(得分:0)

如果要通过其他类访问变量,则应将变量公开为公共属性或字段。但是这些课程需要一种关系。

public class C1
{
  public int x = 1;
}

public class C2
{
  private C1 otherClass;

  // constructor
  public C2(C1 other)
  {
    this.otherClass = other;
  }

  public void accessOtherClass()
  {
    Console.WriteLine(this.otherClass.x);
  }
}