最新回答 / rookie2maven
InetAddress address=InetAddress.getByAddress("IP地址);System.out.println(address.getHostName());
2016-03-04
最赞回答 / SoyaDokio
对于还在纠结端口号为-1的朋友,我说两点:1、HTTP协议在当初制定时规定,其默认端口号为80,即未申明(省略)端口号的情况下,浏览器自动为其补充上URL中缺失的“:80”部分。关于HTTP协议的其它详情,可查阅RFC 2616。2、java.net.URL.getPort()规定,若URL的实例未申明(省略)端口号,则返回值为-1。两件事情请区分开来。
2016-03-04
最新回答 / 小立
虽然在大多数的时候可以直接使用Socket类或输入输出流的close方法关闭网络连接,但有时我们只希望关闭OutputStream或InputStream,而在关闭输入输出流的同时,并不关闭网络连接。这就需要用到Socket类的另外两个方法:shutdownInput和shutdownOutput,这两个方法只关闭相应的输入、输出流,而它们并没有同时关闭网络连接的功能。
2016-03-01
已采纳回答 / SoyaDokio
这是一种正确、严谨的写法。验证非NULL是编码中很重要的一环。假如本来就是NULL,这是调用各自的close()方法是会报错的。如果在实例化这些对象时出错导致这些对象为NULL,或是实例化没问题但中途出了什么异常导致这些对象为NULL,都会在未经验证非NULL前尝试调用close()方法关闭时报错。p.s. 讲师写socket关闭条件时写的是if(socket!=null)socket.close();这样写没错,但我想说一般是另一种写法if(!socket.isClosed())socket.close...
2016-02-29