UML序列图如何绘制传递给另一个实例的实例
使用UMLPlant学习UML序列图。 我不确定我的图表是否正确,以及如何绘制UML序列图如何绘制传递给另一个实例的实例,uml,sequence-diagram,Uml,Sequence Diagram,使用UMLPlant学习UML序列图。 我不确定我的图表是否正确,以及如何绘制washingService.AddToWashingQueue(car) UML工厂代码 @startuml UML Program -> Program : Main Activate Program create "washingService:WashingService" Program -> "washingService:WashingService"
washingService.AddToWashingQueue(car)代码>
UML工厂代码
@startuml UML
Program -> Program : Main
Activate Program
create "washingService:WashingService"
Program -> "washingService:WashingService" : new
create "car:Car"
Program -> "car:Car" : new
Program -> "car:Car" : GetCarSerialNumber
Program -> "car:Car" : GetSpeed
@enduml
namespace ConsoleApp1
{
interface IEngine
{
int GetSpeed();
}
public class Car : IEngine
{
public int GetSpeed()
{
return 42;
}
public string GetCarSerialNumber()
{
return "RT87J324";
}
}
public class WashingService
{
private Queue<Car> queue = new Queue<Car>();
public void AddToWashingQueue(Car car)
{
queue.Enqueue(car);
}
}
class Program
{
public static void Main(string[] args)
{
WashingService washingService = new WashingService();
Car car = new Car();
var serialNumber = car.GetCarSerialNumber();
var speed = ((IEngine)car).GetSpeed();
washingService.AddToWashingQueue(car);
}
}
}
@startuml-UML
程序->程序:主
激活程序
创建“清洗服务:清洗服务”
程序->“清洗服务:清洗服务”:新增
创建“汽车:汽车”
程序->“汽车:汽车”:新
程序->汽车:汽车:GetCarSerialNumber
程序->汽车:汽车:GetSpeed
@enduml
名称空间控制台EAPP1
{
接口引擎
{
int GetSpeed();
}
公车:IEngine
{
public int GetSpeed()
{
返回42;
}
公共字符串GetCarSerialNumber()
{
返回“RT87J324”;
}
}
公营洗衣服务
{
专用队列=新队列();
公共无效添加到垃圾队列(汽车)
{
排队。排队(汽车);
}
}
班级计划
{
公共静态void Main(字符串[]args)
{
WashingService WashingService=新的WashingService();
汽车=新车();
var serialNumber=car.GetCarSerialNumber();
var speed=((IEngine)car.GetSpeed();
清洗服务。添加清洗队列(汽车);
}
}
}
只需将信息AddToWashingQueue(car)发送到洗衣服务
所以
拥有
@startuml
Program -> Program : Main
Activate Program
create "washingService:WashingService"
Program -> "washingService:WashingService" : new
create "car:Car"
Program -> "car:Car" : new
Program -> "car:Car" : GetCarSerialNumber
Program -> "car:Car" : GetSpeed
Program -> "washingService:WashingService" : AddToWashingQueue(car)
@enduml
@startuml
Program -> Program : Main
Activate Program
create "washingService:WashingService"
Program -> "washingService:WashingService" : new
create "car:Car"
Program -> "car:Car" : new
Program -> "car:Car" : GetCarSerialNumber
Program -> "car:Car" : GetSpeed
Program -> "washingService:WashingService" : AddToWashingQueue(car)
@enduml