我正在编写一个Android应用程序,我有一个类可以生成并维护一些偶尔可以更改的固定URL.我将它们全部保存在一个名为UrlUtils的类中:
public class UrlUtils {
private static String sUrlBase = "http://google.com";
/**
* Called occasionally
*/
public static void refreshUrlBases() {
sUrlBase = "http://yahoo.com/" + new Random().nextInt();
}
public static String getUrlBase() {
return sUrlBase;
}
}
我必须在上面调用getUrlBase(),所以我考虑将sUrlBase公开并直接访问它.这种方法在性能方面会更好吗?
解决方法:
如果你不打算更频繁地更改你的网址,那么我会说你可以直接保持静态而不是getter / setter方法
public static String google_url = "http://google.com";
public static String yahoo_url = "http://yahoo.com";
在保持静态方法时,可能会由于某些问题而移除静态setter值(重置为原始值).因此,在这种情况下,它将返回静态值的原始常量.
更新:
如果您要动态更新URL,那么静态方法将被证明是更好的选择.
public static String sUrlBase = "http://google.com";
public static String getsUrlBase() {
return sUrlBase;
}
public static void setsUrlBase(String sUrlBase) {
this.sUrlBase = sUrlBase;
}