import java.net.*;
public class abnormity 
{
   public static void main(String args[]) throws IOException
   {
   try
   {
   ServerSocket s=new ServerSocket(8080);
   }
   catch(IOException e)
   {
   throw e;
   }
   }
}
为何运行时会弹出一个奇怪的窗口,这道程序明明没错啊,刚入门,麻烦不厌其烦咯,呵呵,谢谢。

解决方案 »

  1.   

    你既然已经throws了就不能再catch了,throw是你不想处理异常的时候手动抛出了,既然你已经try了,那还throw什么
    还有,建议类名,首字母用大写的,呵呵~
      

  2.   

    不会啊,我把你的代码COPY到我的机器上运行没什么窗口弹出啊,是不是你的环境出问题了,重启试试
      

  3.   

    IOException异常是java.io.*;这个包里面的,你再导入 import java.io.*; 
      

  4.   

    在补充一点:一般net编程都要设计流操作,所以一般都要导入io包
      

  5.   


    这个有时候是需要的,为了打日志或是action调用这个类然后把异常显示在页面上
      

  6.   

    import java.io.IOException;
    import java.net.ServerSocket;public class abnormity {

    public static void main(String args[]) throws IOException {
    try {
    ServerSocket s = new ServerSocket(8080);
    } catch (IOException e) {
    throw e;
    }
    }
    }JVM会帮你捕获如下错误:Exception in thread "main" java.net.BindException: Address already in use: JVM_Bind
    at java.net.PlainSocketImpl.socketBind(Native Method)
    at java.net.PlainSocketImpl.bind(Unknown Source)
    at java.net.ServerSocket.bind(Unknown Source)
    at java.net.ServerSocket.<init>(Unknown Source)
    at java.net.ServerSocket.<init>(Unknown Source)
    at abnormity.main(abnormity.java:8)