java创建一个学生类(包括姓名,年龄、班级、密码),创建若干该类的对象并保存在文件中(密码不保存),从文件读取对象后显示在屏幕上
时间: 2024-03-10 10:50:44 浏览: 152
以下是一个简单的Java示例,演示如何创建一个学生类、创建对象并将它们保存到文件中、从文件中读取对象并将其显示在屏幕上:
```java
import java.io.*;
public class Student implements Serializable {
private String name;
private int age;
private String className;
private transient String password; // 密码不保存到文件中
public Student(String name, int age, String className, String password) {
this.name = name;
this.age = age;
this.className = className;
this.password = password;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public String getClassName() {
return className;
}
public String getPassword() {
return password;
}
public static void main(String[] args) throws IOException, ClassNotFoundException {
Student s1 = new Student("Tom", 18, "Class 1", "123456");
Student s2 = new Student("Jerry", 19, "Class 2", "abcdef");
// 将对象保存到文件中
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("students.dat"));
oos.writeObject(s1);
oos.writeObject(s2);
oos.close();
// 从文件中读取对象并显示在屏幕上
ObjectInputStream ois = new ObjectInputStream(new FileInputStream("students.dat"));
Student s3 = (Student) ois.readObject();
Student s4 = (Student) ois.readObject();
ois.close();
System.out.println(s3.getName() + " " + s3.getAge() + " " + s3.getClassName()); // 输出:Tom 18 Class 1
System.out.println(s4.getName() + " " + s4.getAge() + " " + s4.getClassName()); // 输出:Jerry 19 Class 2
}
}
```
在这个示例中,我们定义了一个`Student`类,其中包括姓名、年龄、班级和密码等属性。在`main`方法中,我们创建了两个`Student`对象`s1`和`s2`,并将它们保存到文件`students.dat`中。接着,我们使用`ObjectInputStream`从文件中读取对象,并将它们转换成`Student`类型,最后将学生信息显示在屏幕上。
需要注意的是,由于密码是敏感信息,我们使用`transient`关键字标记密码字段,这样在序列化时就不会将密码保存到文件中。
阅读全文