国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

java網絡編程之識別示例 獲取主機網絡接口列表

2019-11-26 15:44:20
字體:
來源:轉載
供稿:網友


獲取主機地址信息

在Java中我們使用InetAddress類來代表目標網絡地址,包括主機名和數字類型的地址信息,并且InetAddress的實例是不可變的,每個實例始終指向一個地址。InetAddress類包含兩個子類,分別對應兩個IP地址的版本:

復制代碼 代碼如下:

Inet4Address
Inet6Address

我們通過前面的筆記可以知道:IP地址實際上是分配給主機與網絡之間的連接,而不是主機本身,NetworkInterface類提供了訪問主機所有接口的信息的功能。下面我們通過一個簡單的示例程序來學習如何獲取網絡主機的地址信息:

復制代碼 代碼如下:

importjava.net.*;
importjava.util.Enumeration;

publicclassInetAddressExample{

publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
try{
//獲取主機網絡接口列表
Enumeration<NetworkInterface>interfaceList=NetworkInterface
.getNetworkInterfaces();
//檢測接口列表是否為空,即使主機沒有任何其他網絡連接,回環接口(loopback)也應該是存在的
if(interfaceList==null){
System.out.println("--沒有發現接口--");
}else{
while(interfaceList.hasMoreElements()){
//獲取并打印每個接口的地址
NetworkInterfaceiface=interfaceList.nextElement();
//打印接口名稱
System.out.println("Interface"+iface.getName()+";");
//獲取與接口相關聯的地址
Enumeration<InetAddress>addressList=iface
.getInetAddresses();
//是否為空
if(!addressList.hasMoreElements()){
System.out.println("/t(沒有這個接口相關的地址)");
}
//列表的迭代,打印出每個地址
while(addressList.hasMoreElements()){
InetAddressaddress=addressList.nextElement();
System.out
.print("/tAddress"
+((addressinstanceofInet4Address?"(v4)"
:addressinstanceofInet6Address?"v6"
:"(?)")));
System.out.println(":"+address.getHostAddress());
}
}
}
}catch(SocketExceptionse){
System.out.println("獲取網絡接口錯誤:"+se.getMessage());
}
//獲取從命令行輸入的每個參數所對應的主機名和地址,迭代列表并打印
for(Stringhost:args){
try{
System.out.println(host+":");
InetAddress[]addressList=InetAddress.getAllByName(host);
for(InetAddressaddress:addressList){
System.out.println("/t"+address.getHostName()+"/"
+address.getHostAddress());
}
}catch(UnknownHostExceptione){
System.out.println("/t無法找到地址:"+host);
}
}
}
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 定南县| 连城县| 余姚市| 梓潼县| 教育| 鄂温| 洛宁县| 当阳市| 富阳市| 丹阳市| 浏阳市| 江北区| 江永县| 来凤县| 郑州市| 建平县| 曲沃县| 皮山县| 博罗县| 浙江省| 三台县| 富蕴县| 武夷山市| 榆社县| 稻城县| 灵石县| 南靖县| 北海市| 简阳市| 固镇县| 奉化市| 女性| 巴塘县| 高密市| 左权县| 松滋市| 茂名市| 门源| 莲花县| 长垣县| 理塘县|