JavaTM 2 Platform
Standard Ed. 5.0

java.net
类 NetworkInterface

java.lang.Object
  继承者 java.net.NetworkInterface

public final class NetworkInterface
extends Object

此类表示一个由名称和分配给此接口的 IP 地址列表组成的网络接口。它用于标识将多播组加入的本地接口。 接口通常是按名称(如 "le0")区分的。

从以下版本开始:
1.4

方法摘要
 boolean equals(Object obj)
          将此对象与指定对象比较。
static NetworkInterface getByInetAddress(InetAddress addr)
          搜索绑定了指定 Internet 协议 (IP) 地址的网络接口的便捷方法。
static NetworkInterface getByName(String name)
          搜索具有指定名称的网络接口。
 String getDisplayName()
          获取此网络接口的显示名称。
 Enumeration<InetAddress> getInetAddresses()
          返回一个 Enumeration 并将所有 InetAddress 或 InetAddress 的子集绑定到此网络接口的便捷方法。
 String getName()
          获取此网络接口的名称。
static Enumeration<NetworkInterface> getNetworkInterfaces()
          返回此机器上的所有接口。
 int hashCode()
          返回该对象的哈希码值。
 String toString()
          返回该对象的字符串表示。
 
从类 java.lang.Object 继承的方法
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

方法详细信息

getName

public String getName()
获取此网络接口的名称。

返回:
此网络接口的名称

getInetAddresses

public Enumeration<InetAddress> getInetAddresses()
返回一个 Enumeration 并将所有 InetAddress 或 InetAddress 的子集绑定到此网络接口的便捷方法。

如果有安全管理器,则为每个 InetAddress 调用其 checkConnect 方法。仅在 Enumeration 中返回 checkConnect 不抛出 SecurityException 的 InetAddress。

返回:
一个 Enumeration 对象,将所有 InetAddress 或 InetAddress 的子集绑定到此网络接口

getDisplayName

public String getDisplayName()
获取此网络接口的显示名称。显示名称是描述网络设备的人可读的 (human readable) String。

返回:
此网络接口的显示名称;如果不存在可用的显示名称,则返回 null。

getByName

public static NetworkInterface getByName(String name)
                                  throws SocketException
搜索具有指定名称的网络接口。

参数:
name - 网络接口的名称。
返回:
具有指定名称的 NetworkInterface;如果不存在具有指定名称的网络接口,则返回 null
抛出:
SocketException - 如果发生 I/O 错误。
NullPointerException - 如果指定的名称为 null

getByInetAddress

public static NetworkInterface getByInetAddress(InetAddress addr)
                                         throws SocketException
搜索绑定了指定 Internet 协议 (IP) 地址的网络接口的便捷方法。

如果指定的 IP 地址被绑定到多个网络接口,则返回哪个网络接口是不确定的。

参数:
addr - 用于搜索的 InetAddress
返回:
NetworkInterface;如果不存在具有指定 IP 地址的网络接口,则返回 null
抛出:
SocketException - 如果发生 I/O 错误。
NullPointerException - 如果指定的地址为 null

getNetworkInterfaces

public static Enumeration<NetworkInterface> getNetworkInterfaces()
                                                          throws SocketException
返回此机器上的所有接口。如果在此机器上找不到任何网络接口,则返回 null。 注:可以使用 getNetworkInterfaces()+getInetAddresses() 来获取此节点的所有 IP 地址

返回:
在此机器上找到的 NetworkInterface 的 Enumeration
抛出:
SocketException - 如果发生 I/O 错误。

equals

public boolean equals(Object obj)
将此对象与指定对象比较。当且仅当参数不为 null,并且它表示与此对象相同的 NetworkInterface 时,结果才为 true

如果 NetworkInterface 的两个实例的名称和地址都相同,则它们表示相同的 NetworkInterface。

覆盖:
Object 中的 equals
参数:
obj - 要与之比较的对象。
返回:
如果对象相同,则返回 true;否则,返回 false
另请参见:
InetAddress.getAddress()

hashCode

public int hashCode()
从类 Object 复制的描述
返回该对象的哈希码值。支持该方法是为哈希表提供一些优点,例如,java.util.Hashtable 提供的哈希表。

hashCode 的常规协定是:

实际上,由 Object 类定义的 hashCode 方法确实会针对不同的对象返回不同的整数。(这一般是通过将该对象的内部地址转换成一个整数来实现的,但是 JavaTM 编程语言不需要这种实现技巧。)

覆盖:
Object 中的 hashCode
返回:
此对象的一个哈希码值。
另请参见:
Object.equals(java.lang.Object), Hashtable

toString

public String toString()
从类 Object 复制的描述
返回该对象的字符串表示。通常,toString 方法会返回一个“以文本方式表示”此对象的字符串。结果应是一个简明但易于读懂。建议所有子类都重写此方法。

Object 类的 toString 方法返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符“@”和此对象哈希码的无符号十六进制表示组成。换句话说,该方法返回一个字符串,它的值等于:

getClass().getName() + '@' + Integer.toHexString(hashCode())
 

覆盖:
Object 中的 toString
返回:
该对象的字符串表示形式。

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策