Java 日看一类(35)之IO包中的ObjectInput接口

java IO体系的学习总结 java IO体系的整理笔记1.Java Io流的概念,分类,类图。1.1 Java Io流的概念    java的io是实现输入和输出的基础,可以方便的实现数据的输入和输出操作。在java中把不同的输入/输出源(键盘,文件,网络连接等)抽象表述为“流”(stream)。通过流的形式允许java程序使用相同的方式来访问不同的输入/输出源。stram是从起源(source)到接收的(sink)的有序 阅读详情

该接口继承自DataInput、AutoCloseable接口



该接口的类头注释如下:

/**
 * ObjectInput extends the DataInput interface to include the reading of
 * objects. DataInput includes methods for the input of primitive types,
 * ObjectInput extends that interface to include objects, arrays, and Strings.
 *
 * @author  unascribed
 * @see java.io.InputStream
 * @see java.io.ObjectOutputStream
 * @see java.io.ObjectInputStream
 * @since   JDK1.1
 */

大意如下:

该类继承自DataInput接口,用来读取Java对象

DataInput包含的方法对应基础数据类型

ObjectInput继承后方法可对应对象、数组和字符串




该类含有如下成员方法:

读取并返回对象

public Object readObject()
    throws ClassNotFoundException, IOException;

读取单个字节数据(在没有有效数据输入时中断

public int read() throws IOException;

读取数据填充传入的数组(没有效数据中断

public int read(byte b[]) throws IOException;

读取数据填充入数组特定位置

public int read(byte b[], int off, int len) throws IOException;

跳过后续的N个字符进行读取

public long skip(long n) throws IOException;

检验有效数据大小

public int available() throws IOException;

关闭输入流(必须释放流有关资源

public void close() throws IOException;





该类接口从当前来看,比前面的一般输入类接口多了个readObject()方法,在这里感觉可能不是很明显,但是实际上这个方法的出现牵扯到序列化方法的许多知识,下一篇文章我们来分析该类的实例之一:ObjectInputStream

JAVA常见知识 @[TOP] 一,关于main方法的问题 1,main方法传参形式? String 数组,且不能改变 2,mian方法为啥是静态的? main方法一定要是静态的,如果不是jvm就要先实例化它的类。如果是非静态的,就只能作为普通方法使用,虽然可以编译成功,但是运行会失败。 3,main方法可以重载吗? 可以, 4,main方法可以被覆盖吗? 因为其实静态的,所以在jvm编译时静态方法会编译在一起,为... 阅读详情

相关推荐

AGV路径规划实战:如何用Python+ROS实现激光SLAM导航(附避障代码)

本文提供了一份基于Python和ROS实现AGV激光SLAM导航的实战指南。内容涵盖从Docker环境搭建、激光雷达数据处理、Gmapping建图,到Move_Base全局/局部路径规划与TEB局部规划器配置的全流程。重点解析了如何通过参数调优实现稳定导航,并附带了紧急避障代码,帮助开发者快速构建具备自主路径规划与实时避障能力的AGV系统。

pepsi的博客 1236

Java IO流--对象流ObjectInputStream和ObjectOutputStream及对象序列化机制的理解

对象序列化机制: 允许把内存中的java对象转换成平台无关的二进制流,从而允许把这种二进制流永久的保存到磁盘上,或通过网络将这种二进制流传输到另一个网络节点。(序列化) 当其他程序获取了这种二进制流,就可以恢复成原来的java对象。(反序列化) 序列化 用ObjectOutputStream类保存基本数据类型或对象的机制 反序列化 用ObjectInputStream类读取基本数据类型或对象的机制 对象流的使用:ObjectOutputStream和ObjectInputStream /**

路宇的博客 2759

基于大疆TSDK与Pix4D的热红外数据工程化处理:从RJPG到温度正射影像的完整工作流

本文详细介绍了基于大疆TSDK与Pix4D的热红外数据工程化处理完整工作流。通过Python脚本自动化解析RJPG格式的热红外图像,提取并转换其中的原始辐射数据为包含真实温度信息的TIFF文件,再结合Pix4Dmapper进行批量拼接,最终生成可直接用于GIS分析的温度正射影像图。该流程解决了手动处理效率低下、参数校准复杂等难题,实现了从原始数据到定量分析成果的高效、准确、可重复生产。

weixin_29161785的博客 377

(每日持续更新)jdk api之ObjectInput基础、应用、实战

无特定字段。返回在没有阻塞的情况下可以读取的字节数。关闭流。在关闭流之后,不能再调用读取操作。int read()读取单个字节的数据。将字节数组中的数据读入到一个字节数组中。从输入流中读取字节数组的一部分。从输入流中读取一个对象。跳过并丢弃输入流中的数据。

a89879193的专栏 975

西门子V90 PN伺服控制核心:FB284功能块详解与实战

在工业自动化中,伺服定位控制是运动控制的基础环节,其本质是PLC通过PROFINET协议与伺服驱动器实现高速、确定性数据交互。FB284作为西门子为V90 PN定制的标准化功能块,封装了GSD映射、状态机管理与周期性PDO同步机制,将底层寄存器操作抽象为高可靠调用接口。相比MOVE指令或MC_MoveAbsolute等通用方案,FB284显著降低时序错乱风险,提升多轴同步精度与故障响应能力。它广泛应用于包装、灌装、装配等中端产线,尤其适配S7-1200/1500平台下的快速部署与现场维护。本文聚焦V90 P

weixin_42696271的博客 300

YOLO数据集实现数据增强的方法(裁剪、平移 、旋转、改变亮度、加噪声等)

数据集样本太少怎么办?数据集优质图像不够怎么办?如何做到更好的数据预处理?一文带你学会数据增强,还可实现带标签的扩充。

路人贾的博客 4万+

(五)java.io.ObjectInput接口详解

简介:ObjectInput接口继承了DataInput、AutoCloseable接口包括对象的阅读功能,DataInput接口包括输入原始数据类型的方法,ObjectInput接口扩展接口包括数组、对象、字符串。 1.public Object readObject() throws ClassNotFoundException, IOException; 分析:读取并返回一个对象,实现此...

OceanSky的专栏 2695

Chrome下载B站视频字幕的插件

本文主要介绍了Chrome下载B站视频字幕的插件,希望能对使用Chrome的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 3万+

JAVA中的对象流ObjectInputStream

需要注意的是,序列化机制并非适用于所有场景,例如敏感数据等,因此在设计类时,要充分考虑序列化的需求和潜在风险。ObjectInputStream是Java中用于序列化对象的一种输入流,它允许我们将对象的状态信息从输入流中读取出来,以便在后续程序中使用。可序列化类的 serialVersionUID 在可序列化类中,建议显式声明一个名为serialVersionUID的静态常量,用于标识该类的版本。反序列化则是将序列化后的数据恢复为对象的过程。定义一个可序列化的类 首先,我们需要定义一个可序列化的类。

qa3629723的博客 2044

【推荐100个unity插件之34】在unity中实现和Live2D虚拟人物的交互——Cubism SDK for Unity

Live2D是一款2D建模的软件,常用于游戏,动态壁纸,虚拟主播,游戏公司里面是有专门的ive2D岗位的。游戏里面还有一个经常使用的软件——spine,他做的也是2d的模型,但是他更适合做一些动作,Live2D更适合人物交互方面。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 5000

工业缺陷检测:基于深度学习的表面缺陷分类

工业缺陷检测:基于深度学习的表面缺陷分类 ,人工智能,计算机视觉,大模型,AI,在现代工业生产中,产品质量直接影响企业的竞争力和声誉,工业缺陷检测作为质量把控的重要环节,其技术的发展至关重要。传统的人工检测方式效率低、成本高且易受主观因素影响,难以满足大规模、高精度的生产需求。随着深度学习技术的蓬勃发展,基于深度学习的工业表面缺陷分类方法凭借强大的特征提取和模式识别能力,成为解决工业缺陷检测难题的有效途径。本文将深入探讨基于深度学习的工业表面缺陷分类技术,结合详细的代码示例和概念解析。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 3万+

java.io接口——ObjectInput和ObjectOutput

ObjectInput 对象输入,继承DataInput,AutoCloseable public Object readObject() throws ClassNotFoundException, IOException; public int read() throws IOException; public int read(byte b[...

一剑轻语 938

YOLOv11与Roboflow数据预处理实战:从原始数据到高性能模型

摘要 Roboflow平台与YOLOv11的结合为计算机视觉开发者提供了高效的工作流。Roboflow提供数据集管理、预处理、增强和导出的一站式解决方案,支持多种标注格式并与YOLOv11无缝集成。YOLOv11在YOLO系列基础上进行了架构创新,包括深度宽度优化、C3k2机制和C2PSA注意力机制,提供从纳米版到超大版的多种模型变体。 使用Roboflow的流程包括:注册工作区、收集/导入数据(支持本地和公开数据集)、专业标注(含SAM辅助)、预处理(尺寸调整、归一化等)和数据增强(几何变换和颜色调整)。

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 353

六十一、JDK原生的序列化详解

相关接口及类 Java为了方便开发人员将Java对象进行序列化及反序列化提供了一套方便的API来支持。其中包括以下接口和类: java.io.Serializable java.io.Externalizable ObjectOutput ObjectInput ObjectOutputStream ObjectInputStream Serializable 接口 类通过实...

I want to know a little more. 1469

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

[转]Serializable接口与Externalizable接口区别

被Serializable接口声明的类的对象的内容都将被序列化,如果现在用户希望自己指定序列化的内容,则可以让一个类实现Externalizable接口,此接口定义如下: 1 public interface Externalizable extends Serializable { 2 public void writeExternal(ObjectOutput out) th...

weixin_30794851的博客 238

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Hessian2ObjectInput.readObject : hessian 反序列化空指针异常

java.lang.NullPointerException at sun.reflect.GeneratedConstructorAccessor329.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorI...

随风 3487

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Java对象的序列化与反序列化

转自:http://www.importnew.com/17964.html 序列化与反序列化 序列化 (Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程。一般将一个对象存储至一个储存媒介,例如档案或是记亿体缓冲等。在网络传输过程中,可以是字节或是XML等格式。而字节的或XML编码格式可以还原完全相等的对象。这个相反的过程又称为反序列化。

hemeinvyiqiluoben的专栏 251

序列化与反序列化

转载自 http://www.importnew.com/17964.html 序列化 (Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程。一般将一个对象存储至一个储存媒介,例如档案或是记亿体缓冲等。在网络传输过程中,可以是字节或是XML等格式。而字节的或XML编码格式可以还原完全相等的对象。这个相反的过程又称为反序列化。 Java对象的序列化与反序列

dayformyjob 313

Java序列化优化:IRIS OUT懒加载技术解决内存溢出实战

对象序列化是Java应用中数据持久化和传输的基础技术,其核心原理是通过将对象状态转换为字节流实现跨进程或持久化存储。传统序列化方案如Java原生Serializable接口存在内存管理效率低下的问题,反序列化时会加载完整对象图,即使只需要访问部分数据也会造成内存浪费。IRIS OUT技术通过Externalizable接口实现选择性序列化和懒加载机制,显著提升内存使用效率,特别适用于处理大型对象和高并发场景。在数据导入导出、缓存系统和分布式计算等应用场景中,这种按需加载的技术能够有效避免内存溢出(OutOf

weixin_33862993的博客 469

Java IO流各场景详解及使用

即in和out,也就是输入输出,指应用程序和外部设备之间的数据传递。是一个抽象概念,是指一连串的数据(字符或字节),是以先进先出的方式发送信息的通道。当程序需要读取数据的时候,就会开启一个通向数据源的流,这个数据源可以是文件,内存,或是网络连接。类似的,当程序需要写入数据的时候,就会开启一个通向目的地的流。

让优秀成为一种习惯! 1528

java.io 属于哪个包_不属于2java.io包中的接口的是( )、

般多的方斜拉桥斜测定采用法一拉索索力,不属包中不考(检测员。得税下列某企业所纳税支出中人发生的,不属包中不得的有扣除额时纳税在计算应所得。下列中各项,不属包中消费应当有(缴纳税的,度的消费根据规定律制税法。的规定征收制度根据管理法律税收,不属包中的措行发票检有权纳税在对机关查中采取人进税务施有。下列中各项,不属包中的项目有扣除额时纳税纳税准予计算企业人在所得税应所得,度的企业根据规定律制所得税法。...

weixin_36391252的博客 524

java io流常用接口_javaIO流接口總結

Java流操作有關的類或接口: Java流類圖結構: 流的概念和作用流是一組有順序的,有起點和終點的字節集合,是對數據傳輸的總稱或抽象。即數據在兩設備間的傳輸稱為流,流的本質是數據傳輸,根據數據傳輸特性將流抽象為各種類,方便更直觀的進行數據操作。IO流的分類根據處理數據類型的不同分為:字符流和字節流根據數據流向不同分為:輸入流和輸出流字符流和字節流字符流的由來: 因為數據編碼的不同,而有了對字符進...

weixin_42528534的博客 717

Java IO各种类型接口

 JDK各种IO各种类型接口。 IO的各种类型的接口 AutoCloseable和Closeable详情见:https://blog.youkuaiyun.com/ydonghao2/article/details/82316191  Flushable:Flushable 是可刷新数据的目标地。调用 flush 方法将所有已缓冲输出写入底层流。这个接口对OutputStream没有任何作用,只对Wr...

程序袁小黑 2915

Java 日看一类(10)之IO包中的DataInput接口

DataInput接口没有引入的包或继承的类;接口注释如下:/** * The {@code DataInput} interface provides * for reading bytes from a binary stream and * reconstructing from them data in any of * the Java primitive types. Ther...

github_37666068的博客 1104

java中常见的包类接口_Java中一些常用的类,包,接口

类:1.java.lang.Object2.java.lang.String3.java.lang.System4.java.io.file5.java.io.FileInputStream包:1.java.lang包2.java.io包3.java.swt包4.java.util包5.java.sql包接口:1.java.util.List2.java.util.Map3.java.util.I...

weixin_35659266的博客 1503

JceKeyStore "ObjectInputFilter REJECTED" 问题分析与解决

1. INFO: ObjectInputFilter REJECTED: class com.sun.crypto.provider.SealedObjectForKeyProtector 2. java.io.ObjectInputStream filterCheck 3. java.io.IOException: Invalid secret key format 4. PowerMock, JCES KeyStore, Java 8 JRE 172

helowken2的博客 2166
上一篇: Java 日看一类(34)之IO包中的NotActiveException和NotSerializableException
下一篇: Java自制简易http服务器(1)
wyf95278
博客等级 码龄10年 38粉丝 71原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值