• Java基础-对象序列化


    对象序列化

    • 作用:以内存为基准,把内存中的对象存储到磁盘文件中去,称为对象序列化。
    • 使用到的流是对象字节输出流:ObjectOutputStream

     

     

    1. package per.mjn.serializable;
    2. import java.io.Serializable;
    3. /**
    4. * 对象要序列化,必须实现Serializable序列化接口
    5. */
    6. public class Student implements Serializable {
    7. private String name;
    8. private String loginName;
    9. private String password;
    10. private int age;
    11. @Override
    12. public String toString() {
    13. return "Student{" +
    14. "name='" + name + '\'' +
    15. ", loginName='" + loginName + '\'' +
    16. ", password='" + password + '\'' +
    17. ", age=" + age +
    18. '}';
    19. }
    20. public Student() {
    21. }
    22. public Student(String name, String loginName, String password, int age) {
    23. this.name = name;
    24. this.loginName = loginName;
    25. this.password = password;
    26. this.age = age;
    27. }
    28. public String getName() {
    29. return name;
    30. }
    31. public void setName(String name) {
    32. this.name = name;
    33. }
    34. public String getLoginName() {
    35. return loginName;
    36. }
    37. public void setLoginName(String loginName) {
    38. this.loginName = loginName;
    39. }
    40. public String getPassword() {
    41. return password;
    42. }
    43. public void setPassword(String password) {
    44. this.password = password;
    45. }
    46. public int getAge() {
    47. return age;
    48. }
    49. public void setAge(int age) {
    50. this.age = age;
    51. }
    52. }
    1. package per.mjn.serializable;
    2. import java.io.FileNotFoundException;
    3. import java.io.FileOutputStream;
    4. import java.io.IOException;
    5. import java.io.ObjectOutputStream;
    6. /**
    7. * 对象序列化,使用ObjectOutputStream将内存中的对象存入磁盘文件中
    8. */
    9. public class ObjectOutputStreamDemo1 {
    10. public static void main(String[] args) throws IOException {
    11. // 1. 创建学生对象
    12. Student s = new Student("mjn", "mjn", "1111", 22);
    13. // 2. 对象序列化,使用对象字节输出流包装字节输出流管道
    14. ObjectOutputStream objectOutputStream = new ObjectOutputStream(new FileOutputStream("d:/obj.txt"));
    15. // 3. 直接调用序列化方法
    16. objectOutputStream.writeObject(s);
    17. // 4. 释放资源
    18. objectOutputStream.close();
    19. System.out.println("序列化完成");
    20. }
    21. }

  • 相关阅读:
    【AI绘画】Stable Diffusion WebUI
    手机市场或迎复苏,芯片测试与封测供应链积极应对 | 百能云芯
    初阶数据结构-常见的排序算法
    Python实现约瑟夫生者死者游戏可视化(单向循环链表实现)
    一份vue面试考点清单
    leetcode 746 使用最小花费爬楼梯
    G-Ghost-RegNet实战:使用G-Ghost-RegNet实现图像分类任务(一)
    python包Package:import包
    C++:学习大纲目录:30天学会C++
    《QA离业务代码能有多近?》轻量级单元测试方案
  • 原文地址:https://blog.csdn.net/weixin_43844521/article/details/128084925