<script type="text/javascript"> 
  </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>



在Java2环境中应用IP地址封装对象

 

IP地址封装对象的结构

Java2平台中定义的InetAddress对象是利用Java语言进行网络通讯程序设计过程中,对互联网IP地址进行对象类型封装后创建的JDK API对象。以InetAddress对象为父对象,Java2平台中还定义了Inet4Address和Inet6Address对象,分别对应于符合IPv4规范和IPv6规范的互联网地址对象。InetAddress对象的定义继承关系如下:

Java.lang.Object |+-- Java.net.InetAddress




在该对象中没有定义构造方法,即不能够利用new操作符创建InetAddress对象实例,那么如何获取该对象的实例呢?在InetAddress对象中定义了多种类型的成员方法,在应用程序中可以调用这些方法来实现相应的网络功能:


● byte[] getAddress()● static InetAddress[] getAllByName(String host)● static InetAddress getByAddr(byte[] addr)● static InetAddress getByAddr(String host, byte[] addr)● static InetAddress getByName(String host)● String getHostAddress()● static InetAddress getLocalHost()… …



从上述InetAddress对象的成员方法定义名称可以看出:在Java应用程序中,可以采用不同的方法获取指定网络对象的IP地址封装对象实例,并进而调用该对象中定义的各种类型的成员方法为应用程序提供相应的功能。

IP地址封装对象应用实例




从上述InetAddress对象定义的成员方法的参数形式可以看出:在读者的Java应用程序中获取本机IP地址封装对象的方法只需要调用getLocalHost方法就可以实现,而可以采用通过指定IP地址、指定服务器名称的方式创建指向其它计算机系统的IP地址封装对象。下面的实例代码演示了InetAddress对象实例的创建方法,并在创建IP地址封装对象实例后,调用该对象中定义的成员方法获取服务的方式:

 //
     
     IPAddressDemo.
     
     Javaimport 
     
     Java.net.*;public class 
     
     IPAddressDemo{    InetAddress local
     
     IPAddress = null;    InetAddress ccidnet
     
     IPAddress = null;    public  static void main( String args[])    {        
     
     IPAddressDemo  
     
     IPInstance;        
     
     IPInstance = new 
     
     IPAddressDemo();        System.out.println("本机
     
     IP地址 : " + 
     
     IPInstance.getLocal
     
     IP());        System.out.println("赛迪网服务器
     
     IP地址 : " + 
     
     IPInstance.getCCIDNET
     
     IP("www.ccidnet.com.cn"));        System.out.println("赛迪网服务器域名 : " + 
     
     IPInstance.getCCIDNETName());     }     //取得本机
     
     IP地址成员方法     public InetAddress getLocal
     
     IP()      {       try       {          local
     
     IPAddress = InetAddress.getLocalHost();       }       catch (UnknownHostException e)        {}       return ( local
     
     IPAddress );     }       //取得赛迪网服务器的
     
     IP地址成员方法     public InetAddress getCCIDNET
     
     IP( String strServerName )     {        try        {           ccidnet
     
     IPAddress = InetAddress.getByName( strServerName );        }          catch (UnknownHostException e)        {}        return ( ccidnet
     
     IPAddress );     }     //通过
     
     IP
     
     地址封装对象取得计算机系统域名成员方法     public String getCCIDNETName()     {     


<script type="text/javascript">
     
     
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
     
     
      
      <script type="text/javascript">
      
      
</script><script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>