2java网络编程.ppt
上传人:qw****27 上传时间:2024-09-12 格式:PPT 页数:64 大小:337KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

2java网络编程.ppt

2java网络编程.ppt

预览

免费试读已结束,剩余 54 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第16章主要内容URL类InetAdress类套接字UDP数据报广播数据报Java远程调用(RMI)难点套接字Java远程调用(RMI)。Java的网络功能由几个不同的包实现,基本的网络功能定义在java.net包中。其中的接口和类可以大致分为三部分:URL、URLConnection、Socket本章将讨论如何使用这些类和接口进行网络编程,实现网络资源的访问和网络通信。16.1网络编程基础知识这四层结构中比较常见的协议有如下几种:1)IP协议2)TCP协议3)UDP协议4)HTTP5)FTP6)SMTP7)POP38)IMAPIP地址16IP地址及URL类16.1URL类URL类的构造方法URL类中的主要方法例创建一个URL对象,并输出该URL对象的信息。//filename:CreateURL.javaimportjava.net.*;importjava.io.*;publicclassCreateURL{publicstaticvoidmain(Stringargs[]){try{URLurl=newURL("http://java.sun.com:80/downloads/index.htm");System.out.println("theProtocol:"+url.getProtocol());System.out.println("thehostname:"+url.getHost());System.out.println("thePort:"+url.getPort());System.out.println("thefile:"+url.getFile());System.out.println(url.toString());}catch(MalformedURLExceptione){System.out.println(e);}}}16.2.1InetAddress类16.2InetAddress类由于InetAddress类没有构造方法,所以也不能直接创建InetAddress对象。要创建该类的实例对象,可以通过该类的静态方法获得该对象。找不到本地机器的地址时,这些方法通常会抛出UnknownHostException异常,所以应该在程序中进行异常处理。java.net.InetAddress类的主要方法1)publicstaticInetAddressgetLocalHost()该方法返回一个InetAddress对象,这个对象包含了本地机的IP地址。当查找不到本地机的地址时,将会抛出一个UnknownHostException异常。2)publicstaticInetAddressgetByName(Stringhost)该方法返回一个由host指定的InetAddress对象,参数host可以是一个主机名,也可以是一个IP地址或者一个DNS域名。如果找不到指定的主机的IP地址,那么该方法将抛出一个UnknownHostException异常。3)publicstaticInetAddressgetByAddress(byte[]addr)根据给定的IP字节地址创建一个InetAddress对象的引用。如果addr是IPv4地址,则返回一个Inet4Address对象。如果addr是IPv6地址,则返回一个Inet6Address对象。如果返回的既不是4字节的也不是16字节的,那么方法将会抛出一个UnknownHostException异常。4)publicstaticInetAddress[]getAllByName(Stringhost)在Internet上,可以用相同的名字代表一组计算机,如java.sun.com就可以对应3个不同的地址,在主机被访问时随机选择一个地址。getAllByName(Stringhost)用来获取具有相同名字的主机的地址对象,并存放在一个地址对象数组中。出错了同样会抛出UnknownException异常。5)publicSringgetHostAddress()该方法将IP地址以网络字节顺序的字节数组的形式返回。由于IPV4只有4个字节,IPV6有16个字节,如果需要知道数组的长度,可以用数组的length字段获得。6)publicSringgetHostName()getHostName()方法返回一个字符串形式的主机名字。如果被查询的机器没有主机名,或者如果使用了Applet,但是它的安全性却禁止查询主机名,则该方法就返回一个具有点分形式的数字IP地址。获得一个InetAddress对象后,就可以使用InetAddress类的getA