Java 语言程序设计-第 10 章 网络聊天60课件讲解.ppt

Java 语言程序设计-第 10 章 网络聊天60课件讲解.ppt

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

Java语言程序设计第10章网络聊天室第2讲:Socket通信提纲1.Socket通信原理2.Socket类和ServerSocket类2.Socket通信实例标识符1.Socket通信原理Java语言程序设计?Socket通信:网络中基于Socket通信的两个进程间建立连接时,会将其中一个进程作为客户端,而另一个进程作为服务器端。Socket通信的主要步骤如下:1、在服务器端的指定端口创建一个ServerSocket对象;2、ServerSocket对象调用accept()方法在指定的端口监听到来的连接。accept()方法阻塞当前Java线程,直到收到客户端连接请求,accept()方法返回连接客户端与服务器的Socket对象;3、调用getInputStream()方法和getOutputStream()方法获得Socket对象的输入流和输出流;4、服务器与客户端根据一定的协议交互数据,直到一端请求关闭连接;5、服务器和客户端关闭连接;6、服务器继续监听下一次连接,客户端运行结束。标识符1.Socket通信原理Java语言程序设计?Socket通信示意图:标识符2.Socket类和ServerSocket类Java语言程序设计Socket类:Java客户端利用Java.net.Socket类实现了客户端的套接字。构造方法:Socket(Stringhost,intport):创建一个流套接字,并将其连接到指定主机上的指定端口号。Socket(InetAddressaddress,intport):创建一个流套接字,并将其连接到指定IP地址的指定端口号。成员方法:getInetAddress():返回套接字连接的地址。getLocalAddress():获取套接字绑定的本地地址。getLocalPort():返回此套接字绑定到的本地端口。getLocalSocketAddress():返回此套接字绑定的端点的地址。getInputStream():返回此套接字的输入流。getOutputStream():返回此套接字的输出流。getPort():返回此套接字连接到的远程端口。close():关闭此套接字。标识符2.Socket类和ServerSocket类Java语言程序设计ServerSocket类:Java服务器端利用Java.net.ServerSocket类实现了服务器端的套接字。构造方法:ServerSocket():创建非绑定服务器套接字。ServerSocket(intport):创建绑定到特定端口的服务器套接字。ServerSocket(intport,intbacklog):利用指定的backlog创建服务器套接字并将其绑定到指定的本地端口号。ServerSocket(intport,intbacklog,InetAddressbindAddr):使用指定的端口、侦听backlog和要绑定到的本地IP地址创建服务器。成员方法:publicSocketaccept()throwsIOException:侦听并接受到此套接字的连接。publicvoidclose()throwsIOException:关闭此套接字。标识符3.Socket通信实例Java语言程序设计客户端publicstaticvoidmain(Stringargs[]){try{//创建Socket对象,向服务器发送请求Sockets1=newSocket(127.0.0.1,8888);//创建输入流对象InputStreamis=s1.getInputStream();DataInputStreamdis=newDataInputStream(is);//读取数据在控制台输出System.out.println(dis.readUTF());//关闭流dis.close();s1.close();}catch(ConnectExceptionconnExc){ connExc.printStackTrace(); System.err.println(服务器连接失败!);}catch(IOExceptione){e.printStackTrace();}}服务器端pu

您可能关注的文档

文档评论(0)

学海无涯苦做舟 + 关注
实名认证
内容提供者

职业教育

1亿VIP精品文档

相关文档