高人求助!调用方法的时候报空指针,不知道为什么。。

nancymcguire 2015-02-23 02:36:36
weatherInfo类如下:
public class weatherInfo{  

public String time ;
public int light;


public void setTime(String text)
{
this.time=text;
}
public void setLight(String text)
{
this.light=Integer.parseInt(text);;
}
public String getTime()
{
return time;
}
public int getLight()
{
return light;
}


public String getTimeLight()
{
String information = "时间" + time + "\n"
+"亮度"+ light + "\n" ;
return information;
}

}




然后我在main函数里,想调用对象info的getTime,就报nullpointerexception,而调用getLight和getTimeLight都正常输出。。
在另一个方法中调用getTime又是可以的。不懂为什么,高人求助!!
...全文
364 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qunxingw 2015-02-25
  • 打赏
  • 举报
回复
package my;

public class test1 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
test t=new test();


t.setLight("456");
t.setTime("123");
t.getLight();
t.getTimeLight();
System.out.println(t);
	}

}
在你的类中添加:@Override public String toString() { return "test [time=" + time + ", light=" + light + "]"; } 测试正常。不知道你是什么问题。
wula0010 2015-02-25
  • 打赏
  • 举报
回复
你的类里面,没有对time做赋值或初始化的操作,所以time为null,getTime为null。 getTimeLight函数对information赋值了,所以返回的有值。 调用getLight正常,是因为你在调用前,调用了setLight。 在另一个方法中调用getTime又是可以的,说明你在这个方法里调用了setTime给time赋值了........................
随缘121 2015-02-23
  • 打赏
  • 举报
回复
把主函数也贴出来看看啊
老白分享 2015-02-23
  • 打赏
  • 举报
回复
调用方法报空指针错误,你就要检查 当前对象是空的。即当前的Object==null

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧