首页 > 试题广场 >

如果希望监听TCP端口9000,应该怎样创建socket?

[单选题]
如果希望监听TCP端口9000,服务器端应该怎样创建socket?
  • new Socket("localhost",9000);
  • new ServerSocket(9000);
  • new Socket(9000);
  • new ServerSocket("localhost",9000);
推荐
B
ServerSocket (int port)
Creates a server socket, bound to the specified port.

Socket(InetAddress address, int port)
Creates a stream socket and connects it to the specified port number at the specified IP address.

编辑于 2016-01-12 11:28:23 回复(8)
题目问的是监听,在服务器端,选B
发表于 2016-08-10 16:53:23 回复(0)
ServerSocket  (int port)
创建一个serversocket 绑定在特定的端口

Socket(InetAddress address, int port)
创建一个socket流,连接到特定的端口和ip地址
发表于 2016-01-11 11:05:00 回复(0)
- 服务端:ServerSocket(port),因为服务器知道自己的IP所以不需要输入IP
- 客户端:Socket(host,port),因为客户端不知道连接哪条IP所以需要输入IP
发表于 2019-02-27 11:35:50 回复(0)
new Socket("localhost",9000); //客户端连接端口 
new ServerSocket(9000); //服务器端监听端口

编辑于 2018-10-14 12:52:20 回复(1)
其实这题应该选A的,题目的意思是服务器端监听的端口号是9000,问客户端应该怎样创建socket。。
发表于 2016-04-02 22:10:09 回复(8)
这道题,利用代码观察,更加一目了然。
//发送端(Client)
import java.io.IOException;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;
public class TCPClicent {
    public static void main(String[] args) throws IOException {
        //TCP发送数据分为以下几步:
        //1.创建发送端socket对象(创建连接:抑或说是创建码头)并指定IP地址和端口号,这里与UDP创建Socket是可以不指定端口号的情况不同
        Socket ss = new Socket(InetAddress.getByName("192.168.0.103"),10086);
        //2.获取输出流对象,准备开始输出数据;
        OutputStream os = ss.getOutputStream();
        String str = "TCP-TEST";
        //3.开始数据发送,数据流是按位输出的
        os.write(str.getBytes());
        //4.释放资源
        ss.close();
    }
}
//接收端 (Server)
import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class TCPServer {
    public static void main(String[] args) throws IOException {
        //TCP接收数据分为以下几步:
        //1.创建接收端的socket对象,与发送端的Socket类不同这里是ServerSocket类,用于监听
        System.out.println("开始监听......");
        ServerSocket s = new ServerSocket(10086);//注意,这里监听用的端口号和新建立连接用的端口号将保持一致,不会开新的端口
        //开始监听(阻塞),直到某用户的三次握手完毕,建立起了安全可靠可用的连接,再利用一个真正的socket对象将数据接下来。
        Socket ss = s.accept();
        System.out.println("收到消息,并开始建立连接......");
        //获取输入数据流
        InputStream is = ss.getInputStream();
        //解析获取数据
        byte [] buf = new byte[1024];
        int len = is.read(buf);
        //输出数据
        System.out.println(new String(buf,0,len));
        //释放资源
        ss.close();
    }
}


发表于 2020-04-04 14:28:21 回复(0)
ServerSocket(int port)方法创建一个server socket 绑定一个端口
发表于 2015-11-24 10:59:30 回复(0)
首先,服务器监听端口的必定用 ServerSocket;其次,根据对 Server 和 Client 的了解,Server 只需要监听请求即可,而 Client 则必须指明向谁请求和向服务器的哪个端口请求,因此选 B 。
编辑于 2016-12-05 15:46:14 回复(0)
B
发表于 2015-10-20 21:41:34 回复(0)
客户端才需要服务端主机ip作为参数 服务端只需要监听端口
发表于 2021-05-28 16:43:30 回复(0)
这道题***简单了,但我还是做错了,哼╯^╰
发表于 2018-04-03 21:11:29 回复(0)
首先,服务器监听端口的必定用 ServerSocket;其次,根据对 Server 和 Client 的了解,Server 只需要监听请求即可,而 Client 则必须指明向谁请求和向服务器的哪个端口请求,因此选 B 。 答案选B。 ServerSocket(int port) 是服务端绑定port端口,调accept()监听等待客户端连接,它返回一个连接队列中的一个socket。 Socket(InetAddress address , int port)是创建客户端连接主机的socket流,其中InetAddress是用来记录主机的类,port指定端口。 socket和servletSocket的交互如下图所示:  详细了解,大家可以看此博客:http://www.cnblogs.com/rond/p/3565113.html
编辑于 2017-09-14 18:11:38 回复(0)
套接字:ServerSocket :只有服务器才需要有***,客户端用于发送请求,不需要***,所以ServerSocket构造方法内没有IP地址,隐式为127.0.0.1(localhost)
发表于 2017-08-30 00:44:03 回复(0)
1.创建一个客户端socket对象,通过构造器指明服务端的IP地址以及接受的端口号
socket = new Socket(InetAddress.getByName("192.168.1.1"),9090);
2.创建一个服务端serverSocket对象,通过构造器指明自身的端口号
ss = new ServerSocket(9090);
发表于 2016-08-28 17:13:35 回复(0)
问:如果希望监听TCP端口9000,服务端应该怎样创建socket?
答:new ServerSocket(9000);
发表于 2021-05-17 09:50:46 回复(0)
new Socket(post,端口)是客户端 new SevereSocket(端口) 是服务器端
编辑于 2021-04-15 10:33:42 回复(0)

服务器端创建监听:

ServerSocket ss = new ServerSocket(int port)

客户端创建监听:

Socket s = new Socket(InetAddress address, int port)

发表于 2019-09-16 16:14:44 回复(0)
ServerSocket  (int port)
创建一个serversocket 绑定在特定的端口

Socket(InetAddress address, int port)
创建一个socket流,连接到特定的端口和ip地址
发表于 2019-06-02 10:19:01 回复(0)