gpt4 book ai didi

java - 使用私有(private)字段和私有(private)构造函数将对象写入文件

转载 作者:行者123 更新时间:2023-11-29 08:55:29 24 4
gpt4 key购买 nike

我正在尝试将 User 类型的对象从数组列表写入文件 - 最好是 CSV,但只要我可以从文件中读回对象并将它们存储在数组列表中(使用以获取有关对象的更多信息)。

我的问题是不仅所有字段都是私有(private)的,而且唯一的构造函数也是私有(private)的。它是不实现可序列化的第三方类 (User.class)。

我已经尝试了很多不同的方法来做到这一点,但问题总是出在构造函数上。 User.class 没有默认构造函数。我一直看到的错误是“构造函数不可见”。

我曾尝试使用反射来访问构造函数和字段,但我似乎无法将它们全部正确链接起来。

基本上,您会以什么方式解决这个问题?我应该继续反射(reflection)吗?我在这里似乎只是在兜圈子!

最佳答案

一种方法,也是我会使用的一种,如下所示:

  • 创建一个可序列化的类,它是用户工厂,称为 UserFactory
  • 为您要保留的每个可序列化用户字段为其指定一个字段
  • 定义一个接受用户并将值保存到其自己的字段的方法。您可能需要更深入地了解可序列化的值
  • 定义一个工厂方法,通过User中的工厂方法使用字段创建一个User

这样的对象将是可序列化的,您只需要执行额外的步骤,即在写入之前将 User 对象放入,并在读取之后取出 User 对象。

关于java - 使用私有(private)字段和私有(private)构造函数将对象写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20480931/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com