如何解决单例类调用将空指针异常赋予主类
| 因此,前几天我在这里有一个问题,关于如何使用两个其他不同的类访问同一数据类而不创建单独的实例。建议使用单例,所以我已经做了一些研究,但是没有太多的研究。 我遇到的问题是,我的主类在尝试访问数据单例时得到了空指针异常。但是我的其他班级可以访问它并获取数据。那到底怎么可能?我有一个非常基本的设置... 单身人士public enum laneData {
INSTANCE;
private String laneID;
public String getLaneID() {
return laneID;
}
public void setLaneID(String laneID) {
this.laneID = laneID;
}
}
主班电话
private laneData laneData;
public void init() {
laneData.setLaneID(\"test\"); //these two lines each throw null pointer unless commented out
System.out.println(laneData.getLaneID());
....
其他班级
public class XMLParser {
private LaneGUI laneGUI;
private laneData laneData;
public void parseInputString(String input){
laneData.setLaneID(getCharacterDataFromElement(line)); //both of these work fine
System.out.println(\"stored ID: \" + laneData.getLaneID());
解决方法
您需要三英镑。
您也可以只使用
laneData.INSTANCE.getLaneID()
。
Java准则还建议不要将Class和Enum名称大写,即。 LaneData
。
,
建议使用单例
所以我做了一些研究但是
没什么关系。
关于单例模式有很多东西。
这是一个单例示例(请注意不同之处)
public class MySingleton {
private String label;
private static MySingleton single;
private MySingleton(String label) {
this.label = label;
}
public static MySingleton getInstance(String label) {
if (singleton == null) singleton = new MySingleton(label);
return singleton;
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。