11. 网络编程
11.1 什么是网络?介绍网络模型?网络的四要素是什么?
在计算机领域中网络是信息传输、接收、共享的虚拟平台,通过网络把点、面、体联系到一起,从而实现这些资源的共享。
网络模型可以分为两种:OSI七层参考模型和TCP/IP四层参考模型。
OSI七层参考模型
应用层\表示层\会话层\传输层\网络层\数据链路层\物理层
TCP/IP四层参考模型
应用层、传输层、IP层【网际层】、网路接口层【网络连入层】
网络的四要素:IP地址、域名、协议、端口
11.2 介绍一下InetAddress类?
Java.net包下的InetAddress类,表示互联网协议地址。这个封装IP地址的InetAddress类,创建对象时需要静态方法来创建。
InetAddress类定义:
public class InetAddress implements java.io.Serializable
InetAddress类的构方法
InetAddress() {
}
创建InetAddress类对象的两种方法:
通过静态方法创建:
1.getLocalHost()方法,返回包含有本机IP地址的InetAddress对象
2.getByName(String host)方法,根据域名得到包含有该域名对应IP地址的InetAddress对象
通过实例方法创建:
1.getHostAddress()方法,返回IP地址字符串(以文本表现形式)。
2.getHostName()方法,获取此IP地址的主机名。
示例代码:
public class InetAddressTest1 {
public static void main(String[] args) throws Exception {
/*
//得到本机的IP地址和主机名
//1.得到包含有本机IP地址的InetAddress对象
//static InetAddress getLocalHost() 返回包含有本机IP地址的InetAddress对象。
InetAddress benji=InetAddress.getLocalHost();
//得到本机IP地址
// String getHostAddress() 返回 IP 地址字符串(以文本表现形式)。
String ip=benji.getHostAddress();
//得到本机主机名
//String getHostName() 获取此 IP 地址的主机名。
String name=benji.getHostName();
System.out.println(name+"\t"+ip);
*/
//得到百度服务器的IP地址
//1.得到包含有百度IP地址的InetAddress对象
//static InetAddress getByName(String host) 根据域名得到包含有该域名对应ip地址的InetAddress对象。
InetAddress baiduip=InetAddress.getByName("www.baidu.com");
//得到百度IP地址
// String getHostAddress() 返回 IP 地址字符串(以文本表现形式)。
String ip=baiduip.getHostAddress();
System.out.println("www.baidu.com==="+ip);
//http://www.baidu.com/
//http://14.215.177.38/
}
}
11.3 什么是TCP协议&