一、网络概述
1、怎么理解网络编程? 不同地理位置的计算机通过IO流传输数据 ------------------------------------------------ 二、网络通信三要素 1、网络通信三大要素 IP地址:计算机在网络中的唯一标识
端口号:用于标识进程的逻辑地址
协议:通信的规则 -------------------------------------------------------
三、网络通信三要素之IP地址
获取本机IP 在DOS窗口输入ipconfig
检测网络是否连通 ping+IP地址
本地回环地址:127.0.0.1
-----------------------------------------------
四、网络通信三要素之端口
有效端口范围: 0-65535
注意:不要用系统保留端口 系统保留端口:0-1024
--------------------------------------------- 五、网络通信三要素之协议 1、TCP 和 UDP协议的区别
UDP: 数据需要打包否: 需要打包 数据大小有无限制:有限制64k 面向有无链接:无连接 可靠否: 不可靠 速度快否:速度快
TCP: 数据需要打包否:不需要 数据大小有无限制:无限制 面向有无链接:有(三次握手) 可靠否:可靠 速度快否:速度慢
---------------------------------------------------- 六、Socket机制概述
1、Socket包装了谁: IP地址以及端口号
注意:接收端和发送端都需要有Socket对象 ----------------------------------------------------------------
七、InetAddress类的概述和使用 1、学完后说说你对IntAddress类的了解 IP地址的一个包装类,是一个实体类
2、如果一个类没有提供构造方法,那么我们如何调用该类的非静态方法? 这个时候应该去该类中去找一定有一个静态的方法返回值类型是该类的对象。
3、public static InetAddress getByName(String host) 通过主机名获取IP地址以对象的形式 (host这个位置可以传主机名,也可以直接传IP地址)
4、public String getHostAddress() 获取IP地址以字符串的形式
5、public String getHostName() 获取主机名以字符串表示形式
---------------------------------------------
八、UDP协议发送数据 1、DatagramSocket是什么? 是一个实体类,我们用它的无参构造穿件了发送端Socket服务对象
2、Datagrampacket这个类是干什么的? DatagramSocket 类下有个send方法参数位置要求传递一个Datagrampacket类型的对象
3、public void send(DatagramPacket p)
把数据打包并发送 DatagramSocket类下的
4、UDP协议发送数据步骤? A:创建发送端Socket对象 (DatagramSocket) B:创建数据,并且把数据打包 C:发送数据 ( send方法) D:释放资源
---------------------------------------------------------- 九、UDP协议接收数据 1、UDP协议接收数据步骤 A:创建接收端Socket服务对象 B:创建接收数据包 C:调用接收的方法 D:解析数据包 E:释放资源
2、为什么创建接收端的Socket对象用的是DatagramSocket中的带参构造DatagramSocket(int port) 因为我接收的时候只需要制定端口号就可以了
3、DatagramSocket类下public void receive(DatagramPacket p) 接收发送端发过来的包
注意:发送端和接收端端口号要一致,不然接收不到数据。 -------------------------------------------------------------- 十二、广播地址概述
1、什么是广播地址?
---------------------------------------------------------------- 十四、TCP协议发送数据 1、TCP协议客户端的步骤: A:创建客户端服务对象 B:建立连接 C:获取输出流对象,直接写数据即可 D:释放资源 2、Socket(String host, int port) 构造方法 host直接传IP地址的字符串表示形式 port 端口号
3、Socket类下public OutputStream getOutputStream() 获取输出流对象
TCP协议: -------------------------------------------------------------------
----------------------------------------------------------- 十五、TCP协议接收数据 1、TCP协议服务器端的步骤: A创建接收端服务器对象 B监听连接 C获取输入流对象,接收数据,并显示在控制台 D释放资源
2、这次用的是ServerSocket类下的构造public ServerSocket(int port)这个构造要指定什么? port指定的是端口号
3、ServerSocket类方法public Socket accept() 监听连接
分别用谁创建了Socket对象
|