我有一个设计问题:让我用简单的例子来解释一下:
Public class A()
{
public static HashMap map = new HashMap();
public static String url = "default";
static {
getJson();
}
//url getters and setters are defined
public static getJson() {
//code which uses url to get json and populate hashmap
}
public string getresult(String key) {
//uses hashmap to send result.
}
我正在使用静态初始化块,因为我只想获取一次 json。
public class B {
//这里我想更改url并调用getJson方法。如果我调用 A.setUrl(),那么在设置 url 之前,会调用 A.getJson() 方法,因为它在静态初始化块中。如何先设置 url,然后调用 getJson()。
//is this a bad design?
}