Java Java类
此类表示网络接口地址。每个具有 IP 地址的设备在网络接口上都有一个 IP 地址。事实上,ping 命令不会 ping 设备,而是 ping 设备接口地址。 Java提供了某些方法来处理接口地址,这些方法可用于需要了解网络拓扑、网络故障检测等的地方。
方法 :
- getAddress() :返回此地址的 InetAddress。
Syntax : public InetAddress getAddress()
- getBroadcast() :返回此接口地址的广播地址的 InetAddress。由于只有 IPv4 地址具有广播地址,因此使用 IPv6 地址时将返回 null。
Syntax :public InetAddress getBroadcast()
- getNetworkPrefixLength() :返回此接口地址的前缀长度,即此地址的子网掩码。
Syntax :public short getNetworkPrefixLength()
- equals() :用于将指定对象与此接口地址进行比较。仅当给定对象不为 null 并且表示与此对象相同的接口地址时才返回 true。
Syntax :public boolean equals(Object obj)
Parameters :
obj : obj to compare with
- hashCode() :返回此接口地址的哈希码。
Syntax :public int hashCode()
- toString() :返回此接口地址的字符串表示形式。该字符串的格式为:接口地址/前缀长度。
Syntax :public String toString()
Java实现:
Java
// Java program to illustrate methods of
// Java.net.InterfaceAddress class
import java.net.InterfaceAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.List;
public class interfaceaddress
{
public static void main(String[] args) throws SocketException
{
// Modify according to your system
NetworkInterface nif = NetworkInterface.getByIndex(1);
List list = nif.getInterfaceAddresses();
for (InterfaceAddress iaddr : list)
{
// getAddress() method
System.out.println("getAddress() : " + iaddr.getAddress());
// getBroadcast() method
System.out.println("getBroadcast() : " + iaddr.getBroadcast());
// getNetworkPrefixLength() method
System.out.println("PrefixLength : " + iaddr.getNetworkPrefixLength());
// hashCode() method
System.out.println("Hashcode : " + iaddr.hashCode());
// toString() method
System.out.println("toString() : " + iaddr.toString());
System.out.println("--------------------\n");
}
}
}
输出 :
getAddress() : /127.0.0.1
getBroadcast() : /127.255.255.255
PrefixLength : 8
Hashcode : -16777208
toString() : /127.0.0.1/8 [/127.255.255.255]
--------------------
getAddress() : /0:0:0:0:0:0:0:1
getBroadcast() : null
PrefixLength : 128
Hashcode : 129
toString() : /0:0:0:0:0:0:0:1/128 [null]
--------------------