gpt4 book ai didi

java - 包含其他对象的对象的 OOP 最佳实践

转载 作者:行者123 更新时间:2023-11-29 07:06:54 27 4
gpt4 key购买 nike

我一直在努力寻找实现它的最佳方法。假设我有两个对象,一个是用户对象,另一个是注释对象。 Note 对象将保存患者的笔记,并将存储笔记的创建者和最后更新者。什么是更好的选择:

选项 A - 两个对象,一个仅包含注释特定信息,另一个是此对象的扩展,包含患者/作者/更新者的用户对象:

public class Note {
private int noteId;
private int patientId;
private int authorId;
private int updatedById;
private String noteText;
private Date noteDate;
}

public class NoteExt extends Note {
private User patient;
private User author;
private User updater;
}

选项 B - 一个注释对象,其中包含患者、作者、更新者的用户类

public class Note {
private int noteId;
private User patient;
private User author;
private User updater;
private String noteText;
private Date noteDate;
}

选项 A 会为额外的对象/数据库调用添加大量文件,使应用程序膨胀,但在获取项目列表时会加快速度。 (在这种情况下使用扩展是否正确?)

选项 B 意味着不用担心记住何时使用哪个对象并且只有一个数据库功能,但如果我正在获取用户创建的所有笔记的列表,则会重复数据。

C选项有更好的吗??

最佳答案

我不会直接将数据库基于您的数据结构。在 Java 中如何安排数据与在 DB 中如何安排数据不必相同,对一个有意义的可能对另一个没有意义。

关于java - 包含其他对象的对象的 OOP 最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18724028/

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