Tai lieu hoc tap tat ca cac mon giup hoc tot Tai lieu hoc tap tat ca cac mon giup hoc tot Tai lieu hoc tap tat ca cac mon giup hoc tot Tai lieu hoc tap tat ca cac mon giup hoc tot Tai lieu hoc tap tat ca cac mon giup hoc totTai lieu hoc tap tat ca cac mon giup hoc tot Tai lieu hoc tap tat ca cac mon giup hoc totTai lieu hoc tap tat ca cac mon giup hoc totTai lieu hoc tap tat ca cac mon giup hoc tot
Tài Liệu Học Tập Lập Trình Mạng Biên soạn : GV Bùi Tiến Trường – 0989995221 Chương I – InetAddress I, Khái Niệm : - Lớp InetAddress sử dụng để biểu diễn địa IP ứng dụng mạng Lớp sử dụng hầu hết lớp mạng, bao gồm Socket, ServerSocket, DatagramSocket, DatagramPacket,… - Nó bao gồm hai trường thơng tin : + hostName (một đối tượng kiểu String) + address (một số kiểu int) Các trường khơng phải trường public, ta truy xuất chúng trực tiếp - Mơ tả mơ hình khai báo đối tượng InetAddress : public class InetAddress { private String hostName; private int address; public String getHostName() { return hostName; } }; - Ví dụ : Viết trang ThongTinMay để đọc thơng số HostName, IP Address Domain Name máy tính cục làm việc : import java.net.*; class ThongTinMay { public static void main(String[] args) { try { InetAddress addr=InetAddress.getLocalHost(); String hostname=addr.getHostName(); String hostaddress=addr.getHostAddress(); String host=addr.getCanonicalHostName(); System.out.println("Host Name : " + hostname); System.out.println("IP Address : " + hostaddress); http://dontruongbt.spaces.live.com/ -1- Tài Liệu Học Tập Lập Trình Mạng Biên soạn : GV Bùi Tiến Trường – 0989995221 System.out.println("Domain : " + host); } catch (UnknownHostException evt) { evt.printStackTrace(); } } } Kết thu sau : II, Phương Thức Thuộc Tính - Lớp InetAddress khơng có hàm khởi tạo (constructor) Tuy nhiên, có ba phương thức tĩnh trả đối tượng thuộc kiểu InetAddress : 1, public static InetAddress InetAddress.getByName(String hostname) Phương thức sử dụng để kết nối đến máy chủ xác định, tham số truyền vào chuỗi ký tự Chuỗi : tên máy, địa IP địa trang web… public static InetAddress[ ] InetAddress.getAllByName(String hostname) kết trả mảng đối tượng thuộc kiểu InetAddress public static InetAddress InetAddress.getLocalHost() phương thức sử dụng để đọc thông tin máy cục làm việc Ví dụ : Viết chương trình kết nối đến trang web “www.microsoft.com” , in hình hostname ip address trang web : import java.net.*; class LayDC { public static void main(String[] args) { try { InetAddress dc =InetAddress.getByName("www.microsoft.com"); System.out.println("Dia Chi IP Trang Microsoft : " + dc); http://dontruongbt.spaces.live.com/ -2- Tài Liệu Học Tập Lập Trình Mạng Biên soạn : GV Bùi Tiến Trường – 0989995221 } catch (UnknownHostException evt) { evt.printStackTrace(); } } } Kết thu sau : - Một số phương thức khác : public String getHostName() : Phương thức trả chuỗi biểu diễn hostname đối tượng InetAddress Nếu máy khơng có hostname, trả địa IP máy dạng xâu ký tự public byte[ ] getAddress() : Nếu bạn muốn biết địa IP máy, phương thức getAddress() trả địa IP dạng mảng byte Ví dụ : Viết chương trình đọc địa IP máy tính, sau cho biết địa nằm lớp địa : import java.net.*; class PhanLoaiIP { public static void main(String[] args) throws UnknownHostException http://dontruongbt.spaces.live.com/ -3- Tài Liệu Học Tập Lập Trình Mạng Biên soạn : GV Bùi Tiến Trường – 0989995221 { InetAddress host=InetAddress.getLocalHost(); byte[] b=host.getAddress(); int i; if (b[0]>=0) i = b[0]; else i = 256 + b[0]; if ( (i>=1) && (i=128) && (i=192) && (i