A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 贺洪京 黑马帝   /  2011-11-4 19:09  /  1573 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package heima.cmo;
import java.net.*;
import java.io.*;
public class recserSever {

        public static void main(String[] args)throws Exception {
       ServerSocket ss=new ServerSocket(3004);
       boolean Rruning =true;
         while(Rruning){
                 Socket s=ss.accept();
                 new Thread(new Servecis(s)).start();
         }
         ss.close();
        }

}
class Servecis implements Runnable{
        Socket s;
        public Servecis(Socket s){
                this.s=s;
        }
        public void run(){
                try{
       
                InputStream ips=s.getInputStream();
                OutputStream ops=s.getOutputStream();
                BufferedReader bff=new BufferedReader(new InputStreamReader(ips));
                 PrintWriter pw=new PrintWriter(ops);
                 while(true){
                        String str= bff.readLine();
                        if(str.equalsIgnoreCase("bye")){                                break;
                        }
                        String sStr=new StringBuffer(str).reverse().toString();
                        pw.println(sStr);
                 }
                 bff.close();
                 pw.close();
                 s.close();
                }
                catch(Exception e){
                        e.printStackTrace();
                }
               
        }
}java.lang.NullPointerException
        at heima.cmo.Servecis.run(recserSever.java:31)
        at java.lang.Thread.run(Unknown Source)
大家帮忙看看这段代码有什么不对的地方?为什么我在关闭客户端的时候红色标记的哪一行会出现这样的异常:

评分

参与人数 1技术分 +1 收起 理由
宁超 + 1 赞一个!

查看全部评分

1 个回复

倒序浏览
还有一种情况就是什么都没输入,什么都没读到,应该设置个变量返回-1才行吧,否则会有空指针异常,我感觉是这样

评分

参与人数 1技术分 +1 收起 理由
宁超 + 1 赞一个!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马