【马士兵】笔记_Java网络编程
2016-11-15 05:39
489 查看
有道云笔记 连接:
http://note.youdao.com/noteshare?id=73a73d444af9b9165649e572f9f1feb4
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
以下可忽略:
《Java网络编程》
与《Java IO流》联系比较紧密。有时涉及到多线程。
分层思想、IP、TCP/UDP编程(写法比较固定、跟IO等的结合使用)。
网关:连接外网与内网的计算机。IP地址(真实IP)是有限的,经常的办法是:将若干台计算机组合成一个子网,公用一个真实IP;子网的内部把虚拟IP分给计算机(虚拟IP的分配和解析与子网掩码有关)。网关一般有两块网卡。
UDP应用(不接受延迟的,容许少量出错的):视频直播,音频传输,网络游戏。TCP应用(不容出错的):银行。
编程时自定端口号时,注意两点:1024以下的不能用,随时可能被系统争用;一些著名软件的端口,如20、8080。
注意,上面说的是TCP的端口号,实际UDP也有端口,二者可以内容一样,但是种类不同。
Socket编程,开发时,一般是Server和Client同时编写,互相参照;测试时,一般是先启Server,再测Client。
127.0.0.1:本机IP。
Client端在申请连接Server端时,只需确定Server端的端口,client端的端口是随机拿取的。
ServerSocket的编写:Server需要不间断运行,时刻等待Client的请求,所以ServerSocket时刻监听在其初始化的端口号上。accept()方法是阻塞式的。(另一个阻塞式的方法是readLine(),读取终端输入;DataInputStream的readUTF()方法也是阻塞式的)Java1.4以前都是同步式的(阻塞),5.0以后提供了异步式的。
上例,Client和Server都在读和写,需要一个先读后写、一个先写后读。
UDP编程,没有Client和Server之分,只是角色上划分。
上例,Client端把一个字符串(String)转换成字节数组(Byte[]),发给Server,Server端把接受到的字节数组存于一个DatagramPacket构建的内存区域里,然后再把它解析成字符串,打印出来。
与UDP结合使用较多的IO流:ByteArrayOutputStream、DataOutputStream等。
http://note.youdao.com/noteshare?id=73a73d444af9b9165649e572f9f1feb4
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
以下可忽略:
《Java网络编程》
与《Java IO流》联系比较紧密。有时涉及到多线程。
分层思想、IP、TCP/UDP编程(写法比较固定、跟IO等的结合使用)。
网关:连接外网与内网的计算机。IP地址(真实IP)是有限的,经常的办法是:将若干台计算机组合成一个子网,公用一个真实IP;子网的内部把虚拟IP分给计算机(虚拟IP的分配和解析与子网掩码有关)。网关一般有两块网卡。
UDP应用(不接受延迟的,容许少量出错的):视频直播,音频传输,网络游戏。TCP应用(不容出错的):银行。
编程时自定端口号时,注意两点:1024以下的不能用,随时可能被系统争用;一些著名软件的端口,如20、8080。
注意,上面说的是TCP的端口号,实际UDP也有端口,二者可以内容一样,但是种类不同。
Socket编程,开发时,一般是Server和Client同时编写,互相参照;测试时,一般是先启Server,再测Client。
127.0.0.1:本机IP。
Client端在申请连接Server端时,只需确定Server端的端口,client端的端口是随机拿取的。
ServerSocket的编写:Server需要不间断运行,时刻等待Client的请求,所以ServerSocket时刻监听在其初始化的端口号上。accept()方法是阻塞式的。(另一个阻塞式的方法是readLine(),读取终端输入;DataInputStream的readUTF()方法也是阻塞式的)Java1.4以前都是同步式的(阻塞),5.0以后提供了异步式的。
上例,Client和Server都在读和写,需要一个先读后写、一个先写后读。
UDP编程,没有Client和Server之分,只是角色上划分。
上例,Client端把一个字符串(String)转换成字节数组(Byte[]),发给Server,Server端把接受到的字节数组存于一个DatagramPacket构建的内存区域里,然后再把它解析成字符串,打印出来。
与UDP结合使用较多的IO流:ByteArrayOutputStream、DataOutputStream等。
相关文章推荐
- Java网络编程---I/O部分学习笔记整理
- Java UDP 网络编程 示例 -Java学习笔记(30)
- Java 网络编程 TCP vs UDP -Java学习笔记(31)
- Java学习笔记(七、网络编程基础)
- 传智博客学习笔记15--JAVA网络编程
- think in java第十五章关于网络编程的读书笔记
- Java网络编程笔记(TCP)
- java网络编程学习笔记
- java NIO非阻塞式IO网络编程学习笔记(一)
- [零散篇]Java学习笔记---Java的Socket网络编程以及多线程
- Java学习笔记之网络编程基础-获取本机名称
- Java学习笔记之网络编程基础-根据域名自动到DNS上获取IP地址
- Java学习笔记之网络编程基础-通过URL获取HTML页面
- Java学习笔记之网络编程基础-通过URL获取网络图片
- Java学习笔记之网络编程基础-通过URLConnection获取HTML页面
- java网络编程之socket编程笔记
- 韩顺平笔记__Java网络编程 实战原理
- 黑马程序员java笔记之六-----网络编程
- 黑马程序员_java网络编程学习笔记
- 黑马程序员java笔记之六-----网络编程