我在test.cs
中有一个班级,其中我有一个字符串值string user="testuser"
。我想在另一个类中使用test.cs的user
值。我怎么能这样做?
答案 0 :(得分:8)
声明字符串public:
public string user = "testuser";
然后你可以通过
从另一个班级访问它Test.user
但是,根据您的确切需要,您应该将该字段设为只读:
public readonly string user = "testuser";
或者使用绑定到支持字段的属性:
public string User
{
get { return this.user; }
}
事实上,属性是从外部访问信息的规范方式,除非极少数非常特殊的情况。通常不推荐公共领域。
作为评论中提到的Ant,还可以选择使其成为常量(假设它实际上是一个常量值):
public const string user = "testuser";
答案 1 :(得分:5)
建立公共财产。
Public string TestUser
{
get { return testUser;}
}
答案 2 :(得分:3)
您应该创建用户的属性并将其公开给任何其他想要读取或写入其值的类。
class MyClass
{
private static string user;
public static string User
{
get { return user; }
set { user = value; }
}
}
class MyOtherClass
{
public string GetUserFromMyClass()
{
return MyClass.User;
}
}
答案 3 :(得分:2)
public class AClass
{
// declarations
private string _user = "testUser";
// properties
public string User { get { return this._user;} set { this._user = value; } }
}
然后调用你的类属性,例如
AClass myClass = new AClass();
string sYak = myClass.User;
答案 4 :(得分:1)
正如之前的答案中所建议的那样,将“用户”变成属性是实现这一目标的理想技术。但是,如果您想以任何方式直接公开它,您应该使用static来避免必须实例化该类的对象。另外,如果你不希望demo类操纵user的值,你应该声明readonly,如下所示
public static readonly user="text user";