关于对象的序列化问题

Gong_Sir 2005-04-28 11:34:42
建立二个文件测试对像序列化

以下是二个文件的源程序

1. objectWrite.java
/*
* Created on 2005-4-28
*
* TODO 对对象进行序列化,保存到 d:\userinfo.dat
*/
package com.lollard.learn;

import java.io.*;
import java.util.*;
/**
* @author Administrator
*
*/
public class objectWrite {
public static void main(String[] args){
Date today = new Date();
UserInfo ui = new UserInfo("a",123456789,"c",today);
try{
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("d:\\userinfo.dat"));
//System.out.print(ui);
oos.writeObject(ui);
oos.close();
}catch(IOException e){
System.out.println("IO error");
}
}

}


class UserInfo implements Serializable{
String name,password;
int user_no;
Date user_date;
UserInfo(String name,int user_no,String password,Date user_date){
this.name = name;
this.password = password;
this.user_no = user_no;
this.user_date = user_date;
}
void printInfo(){
System.out.println("username:" + this.name);
System.out.println("password:" + this.password);
}

}

2.objectRead.java
/*
* Created on 2005-4-28
*/
package com.lollard.learn;

import java.io.*;
import java.util.*;

/**
* @author Administrator
*
* TODO 读取对像失败
*/
public class objectRead {
public static void main(String[] args){
try{
File nf = new File("D:\\userinfo.dat");
FileInputStream fis = new FileInputStream(nf);
ObjectInputStream in = new ObjectInputStream(fis);
Object UserInfo = in.readObject(); //think in java 中的用法
UserInfo.printInfo();
}catch(IOException e){
System.out.println("IO Error");
}
}
}

说明:使用objectWrite.java生成文件没有问题,我参考think in java 中的例子,想重用对象,但是产生错误,内容如下:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
The method printInfo() is undefined for the type Object

at com.lollard.learn.objectRead.main(objectRead.java:24)

请各位给看一下是那里出了问题,或者有其它用法也可以提一下,谢谢!
...全文
104 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Gong_Sir 2005-04-28
  • 打赏
  • 举报
回复
请注意, printInfo() 在objectWrite中已经定义,think in java中也没有在 objectRead 中重新定义这个printInfo(), 是不是要对这个方法重载呀

还有要说一下,使用的开发环境是 windows 2003 +eclipse3.0.2+ jdk1.4
MARS.nEIL 2005-04-28
  • 打赏
  • 举报
回复
The method printInfo() 方法没有定义??
Gong_Sir 2005-04-28
  • 打赏
  • 举报
回复
那位高手给解答一下呀

67,538

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧