eclipse编写Java应用程序,创建一个可序列化类,将该类的对象写入到文件中。用对象输入流读取并显示对象信息。
时间: 2024-03-16 21:41:01 浏览: 153
编写一个java应用程序
好的,我可以帮你解答这个问题。
首先,你需要创建一个可序列化类。一个可序列化类必须实现Serializable接口,这个接口中没有任何方法,只是标记这个类是可序列化的。下面是一个示例代码:
```java
import java.io.Serializable;
public class MySerializableClass implements Serializable {
private String name;
private int age;
public MySerializableClass(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
@Override
public String toString() {
return "Name: " + name + ", Age: " + age;
}
}
```
然后,你需要将该类的对象写入到文件中。下面是一个示例代码:
```java
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;
public class WriteObjectToFile {
public static void main(String[] args) {
MySerializableClass myObject = new MySerializableClass("John", 30);
String fileName = "myObject.ser";
try (FileOutputStream fileOut = new FileOutputStream(new File(fileName));
ObjectOutputStream objectOut = new ObjectOutputStream(fileOut)) {
objectOut.writeObject(myObject);
System.out.println("Object has been written to " + fileName);
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
最后,你需要用对象输入流读取并显示对象信息。下面是一个示例代码:
```java
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
public class ReadObjectFromFile {
public static void main(String[] args) {
String fileName = "myObject.ser";
try (FileInputStream fileIn = new FileInputStream(new File(fileName));
ObjectInputStream objectIn = new ObjectInputStream(fileIn)) {
MySerializableClass myObject = (MySerializableClass) objectIn.readObject();
System.out.println(myObject.toString());
} catch (IOException | ClassNotFoundException e) {
e.printStackTrace();
}
}
}
```
这样就完成了将一个可序列化类的对象写入到文件中,并用对象输入流读取并显示对象信息的操作。
阅读全文