java io网络编程笔记

本文详细探讨了Java中的序列化与反序列化机制,包括ObjectInputStream和ObjectOutputStream的作用,自定义序列化的要求,以及RandomAccessFile的使用。此外,还涉及了NIO的非阻塞I/O和网络通信中的IP地址、端口号概念,以及URL的表示和网络通信要素的分析。
摘要由CSDN通过智能技术生成

序列化和反序列化
对象流:
objectinputstream和objectoutputstream
作用:用于存储和读取基本数据类型或对象的处理流,可以将Java的对象

自定义序列化和反序列化:
1.需要实现serializable接口;
2.提供当局常量,需要自定义序列化版本号
3.除了当前类需要实现serializable接口还必须保证其内部所有属性必须是可序列化的。 
4.序列化和反序列化是不允许操作static和transient修饰的成员变量;
随机存取文件流:
randomAccessfile使用
1.randomAccessfile直接继承object类,实现datainput和dataoutput接口
2.randomaccessfile既可以做输入流也可以做输出流
3.如果randomaccessfile作为输出流时,写出的文件如果不存在,则在执行过程中自动创建,如果写出的文件存在则会对原有内容覆盖。
4.实现插入数据:seek方法
ip对应哪个类的对象 inetAddress;
inetAddress.getbyname(string host)
osi参考模型                      tcp/ip参考        tcp/ip对应协议
应用层                应用层        HTTP/FTP/TELNET/DNS
表示层                
会话层
传输层                传输层        TCP/UDP
网络层
数据链路层          物理层+数据链路层        link
物理层
tcp可靠性传输,进行大数据量传输  效率低
uDp不可靠,以数据报形式发送 数据报限定64k
url编程
统一资源定位符
url url =new url('http//192.168.0.1')
对象序列化机制的理解
将内存对象以二进制的形式传输或者发送或持久化到对应主机
1.实现serializable接口
2.对象所在的类提供常量 序列版本号
3.要求对象的属性也是可序列化的
Nio:non-blocking io 支持面向缓冲区基于通道的io操作 io是面向流 nio2基于jdk7升级
Path替换原有的file类,可以返回异常的日志
Files工具类 操作文件目录的工具类
实现网络通信需要?
1.定位一个或多个主机上的应用
2.找到主机后高效传输
网络通信的两个要素
1.ip和端口号
ip是唯一标识 java中inetAddress类代表ip ip分ipv4 ipv6 域名:人性化名称 本地回路127.0.0.1 
端口号:区别不同的进程 16位整数
2.提供网络协议
 

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值