2013-07-23 54 views
1

在整個項目中有幾個不可變變量需要設置和使用。如果我簡單地擁有一個帶有幾個靜態字段的類並且可以調用,那麼這是否正確?有更好的方法嗎?Java ---正確使用和存儲項目的全局設置

上下文包含「常規」Java項目(例如Web服務類的東西)和Android項目。我在做什麼的例子:

class Settings { 
    public static final String APP_TAG = "Some name"; 
    public static final String URI = "http://43.12.323.12:8080/Server"; 
    public static final int MAX_NUMBER_OF_PIGEONS = 25; 
} 

會加載一些proj_name.config會好多了嗎?截至目前,我認爲這種替代方案是額外的工作,沒有任何好處。

回答

2

您在Android中至少有兩種可能的方式。

  1. 使用SharedPreferences。這樣您可以將所有需要的信息保存在內存中。另一個

  2. 在您的Android項目中創建的資源文件(如Strings.xml)可以幫助您以及在應用程序中以靜態方式保留一些信息。

+0

'上下文包括「常規」Java項目(例如Web服務類的東西)' - 這對您的兩個建議都會產生問題。 – Vikram

+0

@vikram「Regular」Java項目可以使用XML資源,它只是特定於Android的SharedPreferences。所以只有第一個建議是有問題的。 – scatmoi

+0

@scatmoi不會「常規」的Java項目(例如web服務類的東西)獨立於android項目運行嗎?是的,你可以在兩個子項目中包含strings.xml文件,但是,將它們全局設置稱爲不正確。 – Vikram

3

是的,這是很好鞏固「全局常量」成一個單一的對象一樣,你在做什麼,但你可能要考慮將所有這些常量在XML資源,這使得在定製更大的靈活性,本地化等

請注意,如果您選擇去XML資源文件,您將不得不傳遞一個上下文給這些常量的任何使用者。