网络编程1--毕向东java基础教程视频学习笔记
目录:
01 网络编程概述1
02 网络编程概述2
03网络编程 网络模型
04网络编程 IP地址
05网络编程 TCP和UDP
06网络编程 Socket
07网络编程 UDP发送端
01 网络编程概述1
1.找到对方IP。
2.数据要发送到对方指定的应用程序上,为了标识这些应用程序,给这些网络应用程序都用数字进行标识。为了方便称呼这个数字,把它称为端口,是逻辑端口。
3.定义通信规则,这个通信规则称为协议。国际组织规定了通用协议TCP/IP.
02 网络编程概述2

03网络编程 网络模型

04网络编程 IP地址
IP地址
网络中设备的标识
不易记忆,可用主机名
本地回环地址:127.0.0.1 主机名:localhost
Java中用InetAddress类来描述IP地址。

获得该类实例的方法:
getLocalHost():用于返回本地主机的IP地址
getByName():在给定主机名的情况下确定IP地址
05网络编程 TCP和UDP
UDP:
将数据及源和目的封装在数据包中,不需要建立连接
每个数据报的大小限制在64K内。
不需要建立连接,速度快。
因无连接,是不可靠协议。
TCP:
建立连接,形成传输数据的通道。
在连接中可以进行大数据传输。
通过三次握手完成连接,是可靠协议
必须建立连接,效率和降低。
06网络编程 Socket
Socket有插座的意思
Socket就是为网络服务提供的一种机制。
通信的两端都有Socket。
网络通信其实就是Socket之间的通信。
数据在两个Socket之间通过IO传输。
07网络编程 UDP发送端


示例代码:
import java.net.*; /*
需求:通过UDP传输方式,将一段文字数据发送出去。
思路:
1.建立UDPSocket服务,
2.提供数据,并将数据封装到数据包中。
3.通过Socket服务的发送功能,将数据包发送出去。
4.关闭资源 */
public class UdpSend
{
public static void main(String[] args)throws Exception
{
//1.建立udp服务,通过DatagramSocket对象
DatagramSocket ds=new DatagramSocket(); //2.确定数据,并封装成数据报,
//DatagramPacket(byte[] buf, int length, InetAddress address, int port)
byte[] buf="you are not alone".getBytes();
DatagramPacket dp=new DatagramPacket(buf,buf.length,InetAddress.getByName("61.190.196.18"),10000);
//3.通过Socket服务,将已有的数据包发送出去,通过send方法
ds.send(dp);
//4.关闭资源
ds.close(); }
}
网络编程1--毕向东java基础教程视频学习笔记的更多相关文章
- 多线程--毕向东java基础教程视频学习笔记
目录 1.多线程运行的安全问题 2.多线程同步代码块 3.同步方法的锁是this 4.静态同步方法的锁是Class对象 5.单例设计模式(面试中的考点) 6.死锁(一个发生死锁的例子) 多线程运行的安 ...
- 网络编程2--毕向东java基础教程视频学习笔记
Day 23 08 Udp接收端09 Udp键盘录入数据方式10 Udp聊天11 TCP传输12 TCP传输213 TCP练习14 TCP复制文件 08 Udp接收端 需求:定义一个应用程序,用于接收 ...
- 网络编程4--毕向东java基础教程视频学习笔记
Day24 06 自定义浏览器-Tomcat服务端07 自定义图形界面浏览器-Tomcat服务端08 URL-URLConnection09 小知识点10 域名解析 06 自定义浏览器-Tomcat服 ...
- 网络编程3--毕向东java基础教程视频学习笔记
Day24 01 TCP上传图片02 客户端并发上传图片03 客户端并发登录04 浏览器客户端-自定义服务端05 浏览器客户端-Tomcat服务端 01 TCP上传图片 import java.net ...
- IO流05--毕向东JAVA基础教程视频学习笔记
Day20 10 创建java文件列表11 Properties简述12 Properties存取13 Properties存取配置文件14 Properties练习15 PrintWriter16 ...
- IO流04--毕向东JAVA基础教程视频学习笔记
Day20 01 File概述02 File对象功能-创建和删除03 File对象功能-判断04 File对象功能-获取05 File对象功能-文件列表106 File对象功能-文件列表207 列出目 ...
- IO流01--毕向东JAVA基础教程视频学习笔记
提要 01 IO流(BufferedWriter)02 IO流(BufferedReader)03 IO流(通过缓冲区复制文本文件)04 IO流(readLine的原理)05 IO流(MyBuffer ...
- 集合3--毕向东java基础教程视频学习笔记
Day 15 集合框架01 TreeSet02 TreeSet存储自定义对象03 二叉树04 实现Comparator方式排序05 TreeSet练习06 泛型概述07 泛型使用08 泛型类09 泛型 ...
- 集合2--毕向东java基础教程视频学习笔记
Day14 08 LinkedList09 LinkedList练习10 ArrayList练习11 ArrayList练习2 12 HashSet13 HashSet存储自定义对象14 HashSe ...
随机推荐
- django 快速实现注册
前言 对于web开来说,用户登陆.注册.文件上传等是最基础的功能,针对不同的web框架,相关的文章非常多,但搜索之后发现大多都不具有完整性,对于想学习web开发的新手来说不具有很强的操作性:对于web ...
- Mysql学习笔记(三)运算符和控制流函数
本章学习内容: 1.操作符 2.控制流程函数 操作符: i.圆括号.. 简单的介绍一下圆括号,圆括号的使用的目的是规定计算表达式的顺序...这个想必大家都熟悉例如 mysql>select 1 ...
- SystemTap了解
SystemTrap是监控和跟踪运行中的Linux内核操作的动态方法. http://www.ibm.com/developerworks/cn/linux/l-systemtap/ 使用System ...
- 【推荐】iOS带有加载网络图片进度的UIImageView
UCZProgressView 是一个带有通用的圆形图片进度下载控件.动画效果不错 特性 Customizable indicator (line width, radius, and color) ...
- 代码规范之争——[个人Week2作业]
这四个问题均是出自 http://goodmath.scientopia.org/2011/07/14/stuff-everyone-should-do-part-2-coding-standards ...
- Node.js面试题:侧重后端应用与对Node核心的理解
Node是搞后端的,不应该被被归为前端,更不应该用前端的观点去理解,去面试node开发人员.所以这份面试题大全,更侧重后端应用与对Node核心的理解. node开发技能图解 node 事件循环机制 起 ...
- 数论 - 算数基本定理的运用 --- nefu 118 : n!后面有多少个0
题目链接:http://acm.nefu.edu.cn/JudgeOnline/problemshow.php Mean: 略. analyse: 刚开始想了半天都没想出来,数据这么大,难道是有什么 ...
- 数论 - 简单数位推理 --- NYIST 514
Problem's Link:http://acm.nyist.net/JudgeOnline/problem.php?pid=514 Mean: 给你一个l和r,求出在这个范围内的1的个数. ana ...
- 重构第14天 分离职责(Break Responsibilities)
理解:面向对象的五大特征: SOLID,其中S就是职责单一原则.分离职责指当一个类有许多职责时,将部分职责分离到独立的类中,这样也符合面向对象的五大特征之一的单一职责原则,同时也可以使代码的结构更加清 ...
- [新手学Java]反射学习笔记
示例类 @SuppressWarnings("unused") public class Person { public String Name; private int Age; ...