JAVA中序列化读取对象的问题

初学者在使用Java的ObjectInputStream从文件中读取自定义类Loan的对象时遇到问题,能够正常读取基本类型如int和String,但对于自定义类Loan则出现错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

初学JAVA,对serializable使用ObjectInputStream有些疑问,假设当我自己写一个名为Loan的类,先用ObjectOutputStream将Loan的一些数据储存进去,当我想把它再次读出来的时候程序就会报错。

	try(ObjectInputStream input=new ObjectInputStream(new FileInputStream("test.dat"))){
//创建一个l对象变量用于读出写入文件中对象
		Loan[] l=(Loan[])input.readObject();
		for(int o=0;o<l.length;o++){
//Loan方法中有一个getTotalPayment()的方法,此处我用来测试			System.out.println(l[o].getTotalPayment());
		}
	}

会报出如下错误:

如果创建的对象是int或是String等类型,就可成功读出并且不报错,这是为什么呢?

希望可以多多指教,拜托!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值