
socket=new Socket(hostname,port);
oos.close();
这两个地方货跑出空指针异常,是什么原因怎么处理呢?
------解决方案--------------------
贴完整的代码,不要给图片,将代码贴到代码框。
讲明从哪里调用这个方法时报的空指针。
------解决方案--------------------
空指针问题在java的诸多问题中基本算是最好解决的问题了,首先你找到oos这个变量的初始化的地方,然后找到所有跟它相关的操作,然后检查oos 从什么时候开始变为空了就可以了,楼主打断点,一点点跟。
------解决方案--------------------
socket=Socket(hostname,port);
另外两个同理,去掉new
用new是新创变量,而不是改变之前声明的变量
------解决方案--------------------
关闭流时,需要对流进行非空验证。一般流关闭是在finally里面,若是流创建出现异常,catch块执行完后,finally块代码依旧执行,此时流还是空对象
------解决方案--------------------
if (oos != null) { // 判断一下非空在关闭
oos.close();
}
------解决方案--------------------
在哪里抛异常了?
------解决方案--------------------
能不能贴个完整的代码,我来调试一下试试
------解决方案--------------------
找找oos。 看看为什么null 了