咨询:程序代码中<<use>>与<<create>>关系的示例
UML <
<
当类A需要借助类B的功能来完成自身业务逻辑时,两者形成<
Java 代码示例
// 提供日志功能的被依赖类 public class Logger { public void record(String content) { System.out.println("[日志] " + content); } } // 依赖Logger完成业务的类 public class ProductService { public void addProduct(String productName, Logger logger) { // 执行核心业务逻辑 System.out.println("新增商品:" + productName); // 使用Logger的功能完成日志记录 logger.record("商品" + productName + "已成功添加"); } }
这里ProductService不具备日志记录能力,必须依赖Logger的实例来完成该操作,因此两者属于<
<>(创建依赖)关系
当类A负责创建类B的实例时,两者形成<
Java 代码示例1:工厂类创建实例
// 被创建的实体类 public class Order { private String orderId; public Order(String orderId) { this.orderId = orderId; } public String getOrderId() { return orderId; } } // 负责创建Order实例的工厂类 public class OrderFactory { public Order generateOrder(String orderId) { // 直接实例化Order类,形成<<create>>关系 return new Order(orderId); } }
OrderFactory专门负责Order实例的创建逻辑,其他类可通过该工厂获取Order对象,无需自行实例化,这是典型的<
Java 代码示例2:方法内直接创建实例
public class PaymentService { public void processPayment(String paymentId) { // 方法内部直接创建Order实例,同样属于<<create>>关系 Order relatedOrder = new Order("关联订单_" + paymentId); System.out.println("处理支付:" + paymentId + ",关联订单:" + relatedOrder.getOrderId()); } }
PaymentService在自身业务方法中创建了Order的实例,以此完成支付与订单的关联逻辑,两者也构成<
内容的提问来源于stack exchange,提问作者Z.J
相关产品推荐
相关产品推荐

