java我设置了一个变量的值,但是当我使用get时,参数为null
我只是想问一下我的java程序有什么问题
我在java程序中的特定类中设置“id”变量的值,然后 我打印了变量的值,以确保它已被设置
我使用一个脚本在同一个java程序中运行一个类,然后得到“id”的值,但它返回null
我的代码可能有什么问题
谢谢
因此,我将ChargeParamData设置为一个单例类,然后由ChargeFacade访问该类以设置/获取数据
我创建的脚本将调用Chargefacade类的notifyAuthenticationStatus。但当它被称为pluginId时,它是空的
这是get/set类
public class ChargeParamData {
private static final ChargeParamData instance = new ChargeParamData();
/**
* Returns the instance of the class
*
* @return instance of the class
*/
public static ChargeParamData getInstance() {
return instance;
}
/**
* Constructor
*
*/
private ChargeParamData() {
}
//for PluginId
private static String pluginId;
public static void setPluginId(String id) {
pluginId = id;
System.out.println("pluginId to set for Charge is " + pluginId);
}
public static String getPluginId() {
System.out.println("pluginId to get for console test is " + pluginId);
return pluginId;
}
}
这是使用该类的代码:
public final class ChargeFacade {
private static ChargeParamData chargeParam = ChargeParamData.getInstance();
public static void chargePluginInit() {
String pid = null;
PluginDescriptor[] pdList = sample.listPlugin();
pid = pdList[0].getId();
createContext(pid);
}
private static void createContext(String pluginId) {
chargeParam.setPluginId(pluginId);
logger.info("Charge Service created for " + pluginId);
}
public static String notifyAuthenticationStatus(AuthenticationStatus authStat) throws DispatcherException {
String pluginId = chargeParam.getPluginId(); // <-- this part is null
try {
JSONObject json = new JSONObject();
authStat.putInto(json);
retVal = sample.callFunction(pluginId, "notifyAuthenticationStatus", json.toString());
} catch (JSONException e) {
e.printStackTrace();
}
return retVal;
}
}
# 1 楼答案
因为getter和setter方法是在^{中定义的