2012-11-09 103 views
-1

我想在應用程序啓動時最初設置字符串值而不使其爲靜態&進一步我想通過用戶輸入設置字符串變量的值。我怎樣才能設置值首先&後來得到它的用戶?不想設置字符串靜態值

請幫助我

+0

你也應該發佈一些代碼片段,你使用靜態變量,你不想成爲靜態的。我敢打賭,你正在以靜態方法使用它們。 – Flawyte

+0

miNde我發佈了代碼,我使用了靜態變量。現在請建議 – bushra

+0

如果您的「pswd_auth」在程序執行過程中不應更改,我建議您將其聲明爲「最終」。這種方式不能被錯誤修改。 – Flawyte

回答

0

反正它是一個不好的做法,在你的活動有一定的靜態字段。你可以像往常一樣初始化你的財產。

private String pswd_auth= "13579"; 
2

此問題超出了您所顯示的代碼範圍。我認爲這會幫助你理解什麼是靜態手段。看看this article

基本上,在你的其他地方是程序,你必須說ETrackActivity.pswd_auth。當您將paswd_auth設置爲static時,這意味着每個ETrackActivity實例都沒有它自己的paswd_auth值,而是有一個屬於該類整個定義的值。

靜態

MyCustomClass.myValue = 10 

非靜態

MyCustomClass myInstance = new MyCustomClass(); 
myInstance.myValue = 5; 
MyCustomClass anotherInstance = new MyCustomClass(); 
anotherInstance.myValue = 7; 
+0

@miNde現在提出什麼Ur意見 – bushra

+0

if(ETrackActivity.pswd_auth.equals(pswd_auth.getText()。toString()))你指的是靜態的ETrackActivity.pswd_auth。如果你不希望這個字段是靜態的,你必須改變它。我建議閱讀我鏈接到的文章,並思考如何組織這個。 – raydowe

+0

好的謝謝你raydowe。 – bushra