c21java网络编程基础

上传人:pu****.1 文档编号:572341358 上传时间:2024-08-13 格式:PPT 页数:31 大小:312.50KB
返回 下载 相关 举报
c21java网络编程基础_第1页
第1页 / 共31页
c21java网络编程基础_第2页
第2页 / 共31页
c21java网络编程基础_第3页
第3页 / 共31页
c21java网络编程基础_第4页
第4页 / 共31页
c21java网络编程基础_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《c21java网络编程基础》由会员分享,可在线阅读,更多相关《c21java网络编程基础(31页珍藏版)》请在金锄头文库上搜索。

1、Java 网络编程基础网络编程基础第第 21 章章回顾回顾File 类类流的概念流的概念流的分类流的分类流的串联使用流的串联使用字节字节/字符流转换字符流转换RandomAccessFile 类类运行可执行文件运行可执行文件目标目标TCP/IP 通信通信UDP 通信通信广播数据包广播数据包Web 相关类相关类网络网络实现资源共享和通信实现资源共享和通信连接终端系统(主机)的通信系统连接终端系统(主机)的通信系统客户端客户端/服务器模式服务器模式 服务器和客户端共同承担计算服务器和客户端共同承担计算客户端向另一台计算机请求服务的计算机服务器处理客户端请求的计算机优点优点服务器和客户端分摊工作服务

2、器可以同时为数千台客户端服务多个客户端可以同时访问服务器硬件硬件计算机通过线缆连接计算机通过线缆连接网络接口卡网络接口卡 (NIC) 用于将计算机连接至线用于将计算机连接至线缆,也称为网络适配器缆,也称为网络适配器协议协议网络中计算机之间通信的规则网络中计算机之间通信的规则常用的协议常用的协议超文本传输协议 (HTTP)文件传输协议 (FTP)简单邮件传输协议 (SMTP)网络新闻传输协议 (NNTP)端口端口用于区分同一机器上不同的通信程序用于区分同一机器上不同的通信程序0-1023 系统预定义系统预定义1024-65535 一般应用程序使用一般应用程序使用常用的端口常用的端口协议协议端口端

3、口TelnetTelnet协议协议2323简单邮件传输协议简单邮件传输协议2525文件传输协议文件传输协议2121超文本传输协议超文本传输协议8080IP 地址地址 6-1作用作用区分网络上不同的机器特点特点网络上每台计算机IP 地址都是唯一的由4个字节组成的32位二进制数常用四个小数点隔开的十进制数字表示,每个数字代表一个字节分为网络 ID 和主机 ID两段分为A、B、C 、 D和 E 类IP 地址地址 6-2A类地址类地址0A类地址用于主机数目非常多的网络。类地址用于主机数目非常多的网络。A类地址的最高位为类地址的最高位为0,接下来的,接下来的7位完成网络位完成网络ID,剩余的剩余的24位

4、二进制位二进制位代表主机位代表主机ID。A类地址允许类地址允许126个网络,每个网络大约一千七百万台个网络,每个网络大约一千七百万台主机主机;第一个数字是第一个数字是1126。127是一个特殊的网络是一个特殊的网络ID,又称本机网络,可用来检查又称本机网络,可用来检查TCPIP协议协议工作状态。如可用下列命令检查工作状态。如可用下列命令检查TCP/IP是否工作正常是否工作正常 ping 127.0.0.1IP地址地址 6-3B类地址类地址B类地址用于中型到大型的网络。类地址用于中型到大型的网络。B类地址的最高位为类地址的最高位为10,接下来的,接下来的14位完成网络位完成网络ID,剩余的剩余的

5、16位二进位二进制位代表主机制位代表主机ID。B类地址允许类地址允许16384个网络,每个网络大约个网络,每个网络大约65000台台主机主机;第一个数字是第一个数字是128191 10IP地址地址 6-4C类地址类地址C类地址用于小型本地网络。类地址用于小型本地网络。C类地址的最高位为类地址的最高位为110,接下来的,接下来的21位完成网络位完成网络ID,剩余的剩余的8位二进位二进制位代表主机制位代表主机ID。C类地址允许大约二百万个网络,每个网络有类地址允许大约二百万个网络,每个网络有254台台主机;第一个数字是主机;第一个数字是192223 110IP地址地址 6-5D类地址类地址D类地址

6、用于多播。一个多播地址可能包括类地址用于多播。一个多播地址可能包括1台或更多主机,或根本没有。台或更多主机,或根本没有。D类地址的最高位为类地址的最高位为1110;第一个数字是第一个数字是224239。剩余的位设计客户机。剩余的位设计客户机参加的特定组。在多播操作中没有网络或主机位,数据包将传送到网络中参加的特定组。在多播操作中没有网络或主机位,数据包将传送到网络中选定的主机子集中。只有注册了多播地址的主机才能接收到数据包。选定的主机子集中。只有注册了多播地址的主机才能接收到数据包。Microsoft支持支持D类地址类地址1110IP地址地址 6-6E类类第一个数字为第一个数字为240-255

7、,暂时保留,作为实验或,暂时保留,作为实验或将来使用将来使用域名系统(域名系统(DNS)将特定将特定 IP 地址映射至字符串地址映射至字符串比如 202.108.33.32 域名为 优点方便人的记忆映射由域名服务器系统维护映射由域名服务器系统维护Java 网络基础类网络基础类 包包InetAddress Socket、ServerSocket 和 SocketImplDatagramPacket 和 DatagramSocket URL、URLConnection 和 URLEncoderMulticastSocket InetAddress封装封装 IP 地址地址和和 DNS工厂工厂方法方法

8、用于创建实例用于创建实例InetAddress getLocalHost()InetAddress getByName(String HostName)例程序例程序 Ch3_1InetAddressTest.java套接字套接字是是 Internet 通信的端点通信的端点与主机地址和端口地址相关联与主机地址和端口地址相关联客户端和服务器通过套接字建立连接和进行客户端和服务器通过套接字建立连接和进行通信通信TCP/IP 套接字较可靠的双向流协议发送任意数量的数据提供消息确认、错误检测和错误恢复等服务UDP 套接字比较不可靠TCP/IP 通信通信SocketServerSocket输入流输出流输出

9、流输入流建立连接SocketAccept()过程类似打电话过程类似打电话Socket 建立服务器建立服务器和和客户端之间客户端之间的的连接连接构造函数构造函数Socket(String hostName, int port)Socket(InetAddress a, int port)可用可用方法方法InetAddress getInetAddress( )int getPort( )int getLocalPort( )InputStream getInputStreamgetInputStream()OutputStream getOutputStreamgetOutputStream()

10、ServerSocket 注册自己时表示对客户端连接感兴趣注册自己时表示对客户端连接感兴趣构造函数构造函数ServerSocket(int port)ServerSocket(int port, int maxqu)accept( ) 方法方法用于等待客户端触发通信会阻塞线程,等待直到有客户连接才返回例程序例程序 Ch3_2PassClient.java Ch3_3PassServer.javaUDP 通信通信DatagramSocketDatagramPacketDatagramSocketDatagramPacket过程类似发信件过程类似发信件DatagramPacket起到数据起到数据容

11、器作用容器作用的类的类构造函数构造函数DatagramPacket(byte data, int size)DatagramPacket(byte data, int size, InetAddress I, int port)DatagramSocket用于发送或接收用于发送或接收 DatagramPacket构造函数构造函数DatagramSocket()DatagramSocket(int port)可用方法可用方法void send(DatagramPacket d)void receive(DatagramPacket p)void close()例程序例程序 Ch3_4Datagr

12、amClient.javaCh3_5DatagramServer.java广播通信广播通信 3-1特点特点一个发送,多个接收。就象电视台播放节目广播地址广播地址224.0.0.0239.255.255.255类类MulticastSocketDatagramPacket广播通信广播通信 3-2广播广播/ 构造广播 SocketMulticastSocket s = new MulticastSocket(6789);/ 加入组InetAddress group = InetAddress.getByName(228.5.6.7); s.joinGroup(group); / 组数据包Strin

13、g msg = Hello; DatagramPacket hi = new DatagramPacket(msg.getBytes(), msg.length(), group, 6789); / 设置发送范围、发送s. setTimeToLive(1); s.send(hi);广播通信广播通信 3-3接收接收 / 构造广播 SocketMulticastSocket s = new MulticastSocket(6789);/ 加入组InetAddress group = InetAddress.getByName(228.5.6.7); s.joinGroup(group);/ 准备缓

14、冲区byte buf = new byte1000; DatagramPacket recv = new DatagramPacket(buf, buf.length); / 接收、离开s.receive(recv); s.leaveGroup(group); URL 2-1指向指向 Internet 上的上的资源文件资源文件URL 类类提供提供 API 来来访问访问 Internet 上的上的信息信息URL 的的组件组件协议IP 地址或主机名端口号实际文件路径如 http:/localhost:8084/index.htmURL 2-2构造函数构造函数URL(String urlname)U

15、RL(String protocol, String hostname, int port, String path)URL(String protocol, String hostname, String path)例程序例程序 Ch3_6Fetch.javaURLConnection抽象类抽象类用于封装由用于封装由 URL 表示的表示的 Web 对象的连接对象的连接提供进一步了解远程资源的方法提供进一步了解远程资源的方法可用方法可用方法URLConnection openConnection( )String getContentType( )long getLastModified( )int getContentLength( )总结总结TCP/IP 通信通信UDP 通信通信广播数据包广播数据包Web 相关类相关类

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号