我想知道在这种情况下如何绘制类图

时间:2020-06-15 15:44:42

标签: java class uml

我使用Java swing GUI和 这是我的课

Home(UserList Userlist, BookList BookList);

BooK(UserList userList,BookList bookList);

在“家庭”类中,当用户单击按钮然后new Book(userList,bookList);

“ Book”类是扩展JFrame的类

仅在单击“主页”类中的按钮时创建“书籍”类(创建新窗口)

UserList和BookList是处理一些arraylist的类。(我的程序的db,我想将userList和bookList数据从家庭类发送到book类)

我想在Home和Book之间绘制类图。...是组成还是关联?

然后在Home,Book之间的userList,bookList呢? Home和Book没有创建对象userList,bookList。仅获取参数。是协会吗?

2 个答案:

答案 0 :(得分:1)

stricto sensu 列为您的课程列表。

<View>
<Query>
<Where>
    <and>
        <Contains>
            <FieldRef Name='PracticeArea_x0028_s_x0029_' />
            <Value Type='Text'>Lean</Value>
        </Contains>
        <NotInclude>
            <FieldRef Name='PracticeArea_x0028_s_x0029_' />
            <Value Type='Text'>,</Value>
        </NotInclude>
    </and>
</Where>
</Query>
</View>

在“家庭”类中,当用户单击按钮然后Home(UserList Userlist, BookList BookList); BooK(UserList userList,BookList bookList);

Home 的构造函数在参数中接收一个 UserList 和一个 BookList ,假设单击的处理程序受某一操作支持 Home 的类, Home 类需要记住它们。假设这些列表及其包含的实例独立于不会克隆它们的 Home 类而存在,则这些列表是通过简单的关联而不是组合来存储的。

我想在Home和Book之间绘制类图。...是组成还是关联?

都不是,在描述中您给出的 Home 不需要具有(直接)关联,也不需要与 Book 组成,即与 BookList关联就足够了。

如果需要,您可以在 Home Book 之间建立原型化的 create 依赖项,以指示 Home 创建< em>书。

然后在Home,Book之间的userList,bookList呢? Home和Book没有创建对象userList,bookList。仅获取参数。是协会吗?

不。在构造函数或其他操作的参数中接收 UserList BookList 并不意味着您与它们有关联。

如果我将所有图表都放在图中:

enter image description here


具有组成new Book(userList,bookList);的意思是,当 ClassA 的一个实例消失时, ClassB 的相应实例也消失。

具有关联ClassA <*>----> ClassB甚至是聚合ClassA ----> ClassB,当 ClassA 的一个实例消失时, ClassB 的相应实例也可以生存。

答案 1 :(得分:0)

这取决于每个Home是否包含大量书籍(一系列书籍),因此这是Home和Book之间的汇总。 对于BookList和UserList,如果它们可以被视为Home类或Book类的属性,而不是它们的关联,则它们之间没有关系