我有以下代码:
String[] arg= {product,file,name};
APICall.setter(arg);
然后我使用以下两个方法作为getter和setter来从上面的String中获取值:
private static String fileFetcher;
public static void setter(String[] arg) {
fileFetcher=arg[1];
}
public static String getter() {
return fileFetcher;
}
现在我的目标是从file
中的上述String[]
中获取arg[1]
值。
从上面的代码中,方法getter()
应该保留值。所以我可以在任何我想要的地方调用getter()
。但它返回null
。
答案 0 :(得分:1)
您得到null,因为fileFetcher
未分配任何值,您也没有调用setter来为fileFetcher
分配值。
由于fileFetcher
尚未初始化且未分配任何值。它返回null
(默认字符串值)。
请务必先调用setter():
//for example
String[] arg = {"product name", "filename", "name"};
YourClass.setter(arg);
System.out.println(YourClass.getter());
顺便说一下,你的设计对我来说有点奇怪,因为你已经让所有成员static
。