Java培訓課程之 InetAddress類
1通訊要素1:IP 和 端口號
- IP 地址:InetAddress
- 唯一的標識 Internet 上的計算機
- 本地回環地址(hostAddress):0.0.1 主機名(hostName):localhost
- 不易記憶
- 端口號標識正在計算機上運行的進程(程序)
- 不同的進程有不同的端口號
- 被規定為一個 16 位的整數 0~65535。其中,0~1023被預先定義的服務通信占用(如http占用端口80,Tomcat占用端口8080,MySql占用端口3306,Oracle占用端口1521等)。除非我們需要訪問這些特定服務,否則,就應該使用 1024~65535 這些端口中的某一個進行通信,以免發生端口沖突。
- 端口號與IP地址的組合得出一個網絡套接字:Socket。
2 InetAddress類
- Internet上的主機有兩種方式表示地址:
- 域名(hostName):atguigu.com
- IP 地址(hostAddress):108.35.210
- InetAddress類主要表示IP地址,兩個子類:Inet4Address、Inet6Address。
- InetAddress 類對象含有一個 Internet 主機地址的域名和IP地址:atguigu.com 和 202.108.35.210。
- 域名容易記憶,當在連接網絡時輸入一個主機的域名后,域名服務器(DNS)負責將域名轉化成IP地址,這樣才能和主機建立連接。 -------域名解析
- InetAddress類沒有提供公共的構造器,而是提供了如下兩個靜態方法來獲取InetAddress實例
- InetAddress提供了如下幾個常用的方法
3. InetAddress類代碼實例
InetAddress address = InetAddress.getByName("www.jx8100.com");
????? System.out.println(address);
????? //獲取InetAddress 對象所含的域名
????? System.out.println(address.getHostName());
????? //獲取InetAddress 對象所含的IP地址
????? System.out.println(address.getHostAddress());
????? //獲取本機的域名和IP地址
????? InetAddress address2 = InetAddress.getLocalHost();
????? System.out.println(address2);