我的申请中有以下课程:
User
Log
LogRecord
每个用户都有一个日志列表,每个日志包含多个日志记录。现在,由于日志记录应该在删除它所属的日志时删除,因此每个日志都是一个复合记录。删除用户时,还应删除用户拥有的日志。所以它也是一个复合材料。
这是否意味着用户需要一个添加LogRecord
对象的方法?或者我是否可以从用户那里获取Log
对象,然后从中添加/删除等日志记录,然后将日志传回给用户?
我的意思是,这是否意味着我不被“允许”在用户上下文之外谈论Log和LogRecords?我对作文的定义以及应该如何完成感到困惑。
答案 0 :(得分:1)
我的意思是,这是否意味着我不被“允许”谈论Log和 用户上下文之外的LogRecords?
如果要对实际合成建模,则在实例化User对象后将无法访问Log和LogRecords(请参阅Implementation difference between Aggregation and Composition in Java)。
但是,我认为你想在这里建模一些不同的东西。在实例化User对象后,您可能希望创建LogRecord对象并可能创建Log对象。你必须将其建模为聚合。