2009-11-10 72 views

回答

6

聲明字符串市民:

public string user = "testuser"; 

然後你就可以通過

Test.user 

從另一個類訪問它。然而,這取決於你想要什麼,你或許應該讓外地只讀:

public readonly string user = "testuser"; 

或者使用綁定到後臺字段的屬性:

public string User 
{ 
    get { return this.user; } 
} 

事實上,除了極少數非常特殊的情況外,屬性是從外部訪問信息的規範方式。公共領域通常不建議。

正如在評論中提到Ant,也使其成爲一個常數(假設它是,事實上,一個恆定值)的選項:

public const string user = "testuser"; 
+0

然後爲什麼推薦它,如果他們不被推薦? – 2009-11-10 11:13:03

+2

因爲這是最快的方式,使其工作,並需要最少的理解。我可以寫一篇關於爲什麼字段不好並且應該使用屬性的多頁文章,但是OP可能只是需要完成一項工作,或者它是一次性事情,甚至不重要。有人問這樣一個問題可能*目前不設計框架或圖書館數以百萬計的客戶將使用。 – Joey 2009-11-10 11:18:37

+0

不要忘記const選項! :) – Ant 2009-11-10 11:20:23

5

使公共財產。

Public string TestUser 
{ 
get { return testUser;} 
} 
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; 
    } 
} 
1
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; 
1

正如在前面的答案中所建議的,將「user」設置爲屬性是完成此操作的理想技術。但是,如果您想直接公開它,則應該使用static來避免必須實例化該類的一個對象。此外,如果您不希望演示類操縱用戶的價值,您應該聲明爲只讀,如下

public static readonly user="text user"; 
相關問題