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"

使用UMLPlant学习UML序列图。 我不确定我的图表是否正确,以及如何绘制
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