Class 如何编写具有关联类的UML类图

Class 如何编写具有关联类的UML类图,class,uml,diagram,Class,Uml,Diagram,上述类图的编码正确吗 0..* 1..* +-------+ +--------+ |Invoice|_______________________|Products| +-------+ | +--------+ |inID | | |proID | |inDate | |

上述类图的编码正确吗

       0..*                    1..*
+-------+                       +--------+      
|Invoice|_______________________|Products|
+-------+           |           +--------+
|inID   |           |           |proID   |
|inDate |           |           | Qty    |
+-------+           |           | Price  |
                    |           +--------+
               +-----------+
               |LineProduct|
               +-----------+
               | Qty       |
               | salePrice |
               +-----------+
现在又出现了另一个困惑,行产品表将具有inID和proID列,但如何传递具有inID和prod ID的对象


PS:对不起,我陷入了低谷,我无法发布图片并解释我的困惑

我想你一开始就说对了

invoiceTable.saveInvoice(invoice:Invoice);
lineproductTable.saveLine( product instance 1 );
lineproductTable.saveLine( product instance 2 );

//inID:int;注意,UML不需要直接映射到精确的类,但这似乎是一个“去规范化”以确保引用工作。我想强调的是,如果您只知道发票或产品,那么也存在导航性问题,因为它们没有找到关系的参考资料或方法。@Ted Johnson我很困惑!LineProduct是一个关联类ryt?那么我的类代码是否正确?另外,您的图表明确指定了inID和prodID的多重性。因此,您可能希望在代码中将它们声明为整数数组,并确保prodID数组中始终存在至少一个Product实例;但它确实提出了一个问题,即如何为一张发票收集所有产品线?Invoice对象需要有一个LineProducts数组,否则必须立即将所有LineProducts写入数据库,并在每次需要操作列表时进行查询。假设有人在发票完成之前添加到发票中。是的,您所说的关于LineProduct数组的内容是正确的,正如您所说的,我同意//立即向db/写入是一种糟糕的方法。在我以前的项目中,发票表单将发票实例和LineProducts发送到invoiceDB、LineProductDB类。由于invoiceDB接收发票实例,因此很容易将详细信息插入发票数据库表。当涉及到LineProduct arraylist时,我要做的是使用foreach并分离arraylist,然后在arraylist的末尾,1×1 LineProduct实例将插入到LineProduct数据库表中
invoiceTable.saveInvoice(invoice:Invoice);
lineproductTable.saveLine( product instance 1 );
lineproductTable.saveLine( product instance 2 );
//inID:int;  <-- this is what I did but I am wrong 
//prodID:int; <-- this is what I did but I am wrong