[英]C#, accessing a variable from a class?
说我有
public int MyVariable;
在Form1.cs文件中,我想从Class1.cs访问它,您认为哪种方法最好呢?
谢谢!
具有属性的基类:
class Person
{
private string name; // the name field
public string Name // the Name property
{
get
{
return name;
}
set
{
name = value;
}
}
}
自动实施的属性 (如果不需要“名称”的高级工作):
class Person
{
public string Name { get; set; } // the Name property with hidden backing field
}
类访问属性:
Person person = new Person();
person.Name = "Joe"; // the set accessor is invoked here
System.Console.Write(person.Name); // the get accessor is invoked here
这取决于场景。 但理想情况下,将Form元素传递给需要使用它们的任何函数。
您有几种选择:
this
)的引用传递给类,并从该引用中引用成员。 附带说明一下,您将养成使您的公共成员属性代替变量的习惯。 在大多数情况下,该属性可能只会获取/设置变量,仅此而已。 但是,如果需要添加更多内容,可以在不破坏兼容性的情况下进行。 将变量更改为属性会更改类的占用空间,并且会破坏使用该类的内容。
将变量设为static
。 然后,您可以像Form1.MyVariable
那样调用它。
尝试这样:
在情况(1)中,您可以将MyClass.MyInt私有只读。
public class MyForm : System.Windows.Forms.Form
{
int myInt;
public MyForm()
{
myInt = 1;
//1
var myClass = new MyClass(myInt);
//2
myClass.MyInt = myInt;
}
}
public class MyClass
{
public int MyInt { get; set; }
public MyClass(int myInt)
{
MyInt = myInt;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.