您的位置:首页 > 理论基础 > 计算机网络

1.InetAddress和InetSocketAddress

2016-06-08 10:23 369 查看
区别:InetAddress封装了计算机的ip地址和DNS,没有端口;

InetSocketAddress封装了计算机的ip地址和DNS,包括了端口。

InetAddress介绍:没有获得构造函数的权限,必须通过静态函数和函数进行实例化。

1.静态方法获取对象:

InetAddress.getLocalHost()

InetAddress.getByName(“www.baidu.com”)

InetAddress.getByName(“230.11.34.1”)

2.方法:

getHostAddress() //返回ip地址

getHostName() //返回域名/本机的计算机名

InetSocketAddress介绍:

在InetAddress的基础上加上了端口,提供了构造器

1.创建对象

new InetSocketAddress(String hostName, int port)

new InetSocketAddress(InetAddress addr, int port)

2.方法

getAddress()

getHostName()

getPort()

示例代码:

package Socket;

import java.net.InetAddress;
import java.net.UnknownHostException;

/**
* Created by dd on 2016/6/8 0008.
*/
public class demo01 {
public static void main(String[] args) throws UnknownHostException {
//使用localHost方法创建对象,获取的是本机的内容
InetAddress addr = InetAddress.getLocalHost();
System.out.println(addr.getHostAddress());  //返回ip地址
System.out.println(addr.getHostName()); //返回计算机名

//        通过getByName获取指定域名的内容
addr = InetAddress.getByName("www.163.com");
System.out.println(addr.getHostAddress());  //返回ip地址
System.out.println(addr.getHostName()); //返回计算机名

//        通过ip获得内容
addr = InetAddress.getByName("127.0.0.1");
System.out.println(addr.getHostAddress());  //返回ip地址
System.out.println(addr.getHostName()); //返回计算机名

}
}


package Socket;

import java.net.InetAddress;
import java.net.InetSocketAddress;

/**
* Created by dd on 2016/6/8 0008.
*/
public class demo02 {
public static void main(String[] args) {
InetSocketAddress address = new InetSocketAddress("localhost", 9999);
System.out.println(address.getHostName());
System.out.println(address.getPort());
InetAddress addr = address.getAddress();
System.out.println(addr.getHostName());
System.out.println(addr.getHostAddress());
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  网络编程