java获取ip代码(全部复制运行)
2013-06-03 15:58
239 查看
/*
无论你是在打电话、发送邮件或建立与Internet的连接,地址是基础。InetAddress 类用来封装我们前面讨论的数字式的IP地址和该地址的域名。你通过一个IP主机名与这个类发生作用,IP主机名比它的IP地址用起来更简便更容易理解。InetAddress 类内部隐藏了地址数字。
一、工厂方法
InetAddress 类没有明显的构造函数 。为生成一个InetAddress对象,必须运用一个可用的工厂方法。工厂方法(factory method)仅是一个类中静态方法返回一个该类实例的约定。这是在一个带有各种参数列表的重载构造函数完成的,当持有惟一方法名时可使结果更清晰。对于InetAddress,三个方法getLocalHost( )、getByName( )以及getAllByName( )可以用来创建InetAddress的实例。三个方法显示如下:
static InetAddress getLocalHost( )
throws UnknownHostException
static InetAddress getByName(String hostName)
throws UnknownHostException
static InetAddress[ ] getAllByName(String hostName)
throws UnknownHostException
getLocalHost( )仅返回象征本地主机的InetAddress对象。get-ByName( )方法返回一个传给它的主机名的InetAddress。如果这些方法不能解决主机名,它们引发一个UnknownHostException异常。
在Internet上 ,用一个名称来代表多个机器是很常有的事。Web服务器中,也有方法提供一定程度的缩放 。getAllByName( )工厂方法返回代表由一个特殊名称分解的所有地址的InetAddresses类数组。在不能把名称分解成至少一个地址时,它将引发一个 Unknown Host-
Exception异常。
下面的例子
*/
package com.prochanges.ft;
import java.net.*;
public class ymJXIP {
InetAddress myIPaddress = null;
InetAddress myServer = null;
public static void main(String args[]) {
ymJXIP mytool;
mytool = new ymJXIP();
System.out.println("Your host IP is: " + mytool.getMyIP());
System.out.println("The Server IP is :" + mytool.getServerIP());
}
// 取得LOCALHOST的IP地址
public InetAddress getMyIP() {
try {
myIPaddress = InetAddress.getLocalHost();
} catch (UnknownHostException e) {
}
return (myIPaddress);
}
// 取得 www.abc.com 的IP地址
public InetAddress getServerIP() {
try {
myServer = InetAddress.getByName("www.baidu.com");
} catch (UnknownHostException e) {
}
return (myServer);
}
}
/*
下面是 该程序的输出
Your host IP is: XP-201207090916/192.168.0.46
The Server IP is :www.baidu.com/119.75.217.56
二、实例方法
InetAddress 类也有一些非静态的方法,列于下面,它们可以用于讨论过的方法返回的对象:
boolean equals(Object other)如果对象具有和other相同的Internet地址则返回true。byte[ ] getAddress( )返回代表对象的Internert地址的以网络字节为顺序的有四个元素的字节数组。String getHostAddress( )返回代表与InetAddress对象相关的主机地址的字符串。String getHostName( )返回代表与InetAddress对象相关的主机名的字符串。int hashCode( )返回调用对象的散列码。boolean
isMulticastAddress( )如果Internet地址是一个多播地址返回true;否则返回false。String toString( )返回主机名字符串和IP地址。
Internet地址在分层的缓存服务器系列中被找到。这意味着你的本地机可能像 知道它自己和附近的服务器一样知道一个名称-IP地址的自动映射。对于其他名称 ,它可能向一个本地DNS服务器询问IP地址信息。如果那个服务器不含一个指定的地址,它可以到一个远程的站点去询问。这可以一路通到名为InterNIC(internic.net)的根服务器。该过程可能需要比较长的时间,所以结构化你的代码以使你在本地存储IP地址信息而不是重复向上查找信息是一个明智之举。
*/
无论你是在打电话、发送邮件或建立与Internet的连接,地址是基础。InetAddress 类用来封装我们前面讨论的数字式的IP地址和该地址的域名。你通过一个IP主机名与这个类发生作用,IP主机名比它的IP地址用起来更简便更容易理解。InetAddress 类内部隐藏了地址数字。
一、工厂方法
InetAddress 类没有明显的构造函数 。为生成一个InetAddress对象,必须运用一个可用的工厂方法。工厂方法(factory method)仅是一个类中静态方法返回一个该类实例的约定。这是在一个带有各种参数列表的重载构造函数完成的,当持有惟一方法名时可使结果更清晰。对于InetAddress,三个方法getLocalHost( )、getByName( )以及getAllByName( )可以用来创建InetAddress的实例。三个方法显示如下:
static InetAddress getLocalHost( )
throws UnknownHostException
static InetAddress getByName(String hostName)
throws UnknownHostException
static InetAddress[ ] getAllByName(String hostName)
throws UnknownHostException
getLocalHost( )仅返回象征本地主机的InetAddress对象。get-ByName( )方法返回一个传给它的主机名的InetAddress。如果这些方法不能解决主机名,它们引发一个UnknownHostException异常。
在Internet上 ,用一个名称来代表多个机器是很常有的事。Web服务器中,也有方法提供一定程度的缩放 。getAllByName( )工厂方法返回代表由一个特殊名称分解的所有地址的InetAddresses类数组。在不能把名称分解成至少一个地址时,它将引发一个 Unknown Host-
Exception异常。
下面的例子
*/
package com.prochanges.ft;
import java.net.*;
public class ymJXIP {
InetAddress myIPaddress = null;
InetAddress myServer = null;
public static void main(String args[]) {
ymJXIP mytool;
mytool = new ymJXIP();
System.out.println("Your host IP is: " + mytool.getMyIP());
System.out.println("The Server IP is :" + mytool.getServerIP());
}
// 取得LOCALHOST的IP地址
public InetAddress getMyIP() {
try {
myIPaddress = InetAddress.getLocalHost();
} catch (UnknownHostException e) {
}
return (myIPaddress);
}
// 取得 www.abc.com 的IP地址
public InetAddress getServerIP() {
try {
myServer = InetAddress.getByName("www.baidu.com");
} catch (UnknownHostException e) {
}
return (myServer);
}
}
/*
下面是 该程序的输出
Your host IP is: XP-201207090916/192.168.0.46
The Server IP is :www.baidu.com/119.75.217.56
二、实例方法
InetAddress 类也有一些非静态的方法,列于下面,它们可以用于讨论过的方法返回的对象:
boolean equals(Object other)如果对象具有和other相同的Internet地址则返回true。byte[ ] getAddress( )返回代表对象的Internert地址的以网络字节为顺序的有四个元素的字节数组。String getHostAddress( )返回代表与InetAddress对象相关的主机地址的字符串。String getHostName( )返回代表与InetAddress对象相关的主机名的字符串。int hashCode( )返回调用对象的散列码。boolean
isMulticastAddress( )如果Internet地址是一个多播地址返回true;否则返回false。String toString( )返回主机名字符串和IP地址。
Internet地址在分层的缓存服务器系列中被找到。这意味着你的本地机可能像 知道它自己和附近的服务器一样知道一个名称-IP地址的自动映射。对于其他名称 ,它可能向一个本地DNS服务器询问IP地址信息。如果那个服务器不含一个指定的地址,它可以到一个远程的站点去询问。这可以一路通到名为InterNIC(internic.net)的根服务器。该过程可能需要比较长的时间,所以结构化你的代码以使你在本地存储IP地址信息而不是重复向上查找信息是一个明智之举。
*/
相关文章推荐
- java实现记事本基本功能:新建、打开、保存、另存为、退出、替换、全部替换、复制、剪切、粘贴、全选、获取当前时间日期、修改字体、颜色、自动换行等
- Java获取 JVM 运行信息
- 关于java路径的获取问题,保证部署(jar)到机器上正常运行
- Java线程池获取全部完成时的状态并执行后续工作
- java获取json中的全部键值对实例
- Java Web 项目获取运行时路径 classpath
- Java 的泛型擦除和运行时泛型信息获取
- Java获取当前电脑运行的任务(任务管理器列表)
- JAVA中获取当前运行的类名,方法名,行数
- 获取Java程序运行路径
- JAVA程序获取Tomcat的运行状态
- 获取 Java 程序运行的路径|获取当前 jar 包的路径
- 获取应用程序的运行目录(Java)
- 浅谈Java自定义注解和运行时靠反射获取注解
- java文件操作类(新建 复制 移动 删除文件和文件夹 获取扩展名)
- java复制文件夹下全部的文件到指定目录
- java 获取更精确的时间运行记录
- 运行时获取方法调用堆栈信息(java)
- JAVA获取当前运行路径
- java获取当前类的路径并且把本类的内容全部输出到指定位置