Java数据文件在类之间共享

标签 java file class share

我正在制作一个从文件(Serialized objectInputStream)读取的小程序,该文件是一个注册表列表,其中每个条目都有一个设置为 true 或 false 的 boolean 变量。

在这个程序中,我有两个独立的 JPanel 类。一个是 A 类,可以更改这些变量的值,另一个是 B 类,检查这些变量是真还是假。 这两个类是在带有 main-method 的 gui-class 下创建的。

如果我更改了 A 类中的变量,如何才能看到 B 类中新的更新值? 我尝试在每个类中创建一个ObjectInput-输出流。这意味着对于每个更改,该类都会将其写入文件并在更改/读取之前将其读回。 这可行,但它是最佳的吗?有更好的方法吗?

model of program

最佳答案

您可以创建一个 C 类来保存您读取的信息。因此,B 类读取数据并将信息放入 C 类。当 A 类更改值时,它将触发一个事件来通知 B 类。

您可以使用HashMap<String, Boolean>来存储数据。字符串是值的名称, boolean 值是值。然后你可以制作类似 public void update(String name, boolean newValue) 的方法在 B 类中。此方法将更新值,然后在您需要通知新值的所有类中调用方法。

关于Java数据文件在类之间共享,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16511210/

相关文章:

python - 即使模板文件存在,Flask 也会引发 TemplateNotFound 错误

python,存储重复条目的智能方法

c - 将字符串结尾字符添加到文件会损坏它..?

json - 使用 JSON 文件中的值初始化多个类似乎会创建重复项

java - Map中的Json对象,在java中如何获取它?

java - 堆栈、括号匹配

java - Spring boot Thymeleaf 根据其他下拉列表选择填充下拉列表

java - Tomcat HtmlUnit 过滤器看不到请求的 URL

python : Object not created

使用返回模板声明接口(interface)的 C++ 错误