总结于尚硅谷学习视频
概述
一、网络编程中有两个主要的问题:
- 1.如何准确第定位网络上一台或多台主机:定位主机上的特定的应用
- 2.找到主机后如何可靠高效的进行数据传输
二、网络编程中的两个要素:
- 1.对于问题一:IP和端口号
- 2.对于问题二:提供网络通信协议:TCP/IP参考模型(应用层、传输层、网络层、物理+数据链路层)
三、通信要素一:IP和端口号
- 1.IP:唯一的标识 Internet 上的计算机(通信实体)
- 2.在Java中使用InetAddress类代表IP
- 3.IP的分类:IPV4 和 IPV6 ; 万维网 和 局域网
- 4.域名: www.baidu.com www.mi.com www.sina.com www.jd.com www.vip.com
- 5.本地回路地址:127.0.0.1 对应着: localhost
- 6.如何实例化InetAddress:
- 两个方法:getByName(String host) 、getLocalHost()
- 两个常用方法:getHostName() / getHostAddress()
- 7.端口号:正在计算机上运行的进程
- 要求:不同的进程有不同的端口号
- 范围:被规定为一个16位的整数0~65535
- 8 端口号与IP地址的组合的出一个网络套接字:Socket
- UDP类比发短信 TCP类比打电话
代码
InetAddressTest类
package com.day0318_1;
import java.net.InetAddress;
import java.net.UnknownHostException;
/**
* 一、网络编程中有两个主要的问题:
* 如何准确第定位网络上一台或多台主机:定位主机上的特定的应用
* 2.找到主机后如何可靠高效的进行诗句传输
*
* 二、网络编程中的两个要素:
* 1.对于问题一:IP和端口号
* 2.对于问题二:提供网络通信协议:TCP/IP参考模型(应用层、传输层、网络层、物理+数据链路层)
*
*
* 三、通信要素一:IP和端口号
*
* 1.IP:唯一的标识 Internet 上的计算机(通信实体)
* 2.在Java中使用InetAddress类代表IP
* 3.IP的分类:IPV4 和 IPV6 ; 万维网 和 局域网
* 4.域名: www.baidu.com www.mi.com www.sina.com www.jd.com
* www.vip.com
* 5.本地回路地址:127.0.0.1 对应着: localhost
*
* 6.如何实例化InetAddress:两个方法:getByName(String host) 、getLocalHost()
* 两个常用方法:getHostName() / getHostAddress()
*
* 7.端口号:正在计算机上运行的进程
* 要求:不同的进程有不同的端口号
* 范围:被规定为一个16位的整数0~65535
*
* 8. 端口号与IP地址的组合的出一个网络套接字:Socket
* UDP发短信 TCP打电话
*
*
*
*/
public class InetAddressTest {
public static void main(String[] args) {
try {
//File file =new File("hello.txt");
InetAddress inet1 = InetAddress.getByName("192.168.10.14");
System.out.println(inet1);
InetAddress inet2 = InetAddress.getByName("www.atguigu.com");
System.out.println(inet2);
InetAddress inet3 = InetAddress.getByName("127.0.0.1");
System.out.println(inet3);
//获取本机IP
InetAddress inet4 = InetAddress.getLocalHost();
System.out.println(inet4);
//getHostName()
System.out.println(inet2.getHostName());
//getHostAddress()
System.out.println(inet2.getHostAddress());
} catch (UnknownHostException e) {
e.printStackTrace();
}
}
}
图片
IP和端口号