请按如下代码画出相应的序列图。要求:若存在重复性功能的代码段,将其定义为序列片段,在重复处进行引用。
#include <iostream>
using namespace std;
class A{
private:
int a;
void Output ();
public:
void setA(int t_a);
};
void A::setA(int t_a)
{
a=t_a;
Output();
}
void A::Output(){
cout<<a<<endl;
}
void main()
{
A *p=new A;
p->.setA(5);
*p=new A;
p->.setA(10);
}
学生管理系统中有一个模块是报到登记,具体功能是:管理员进行学生信息录入、数据查询、数据修改等。请根据上述描述画出用例图。(提示:对学生信息的删除和修改首先都需要查询出该学生记录。请注意考虑用例间的关系)
请按如下代码画出相应的序列图
#include <iostream>
using namespace std;
class A{
private:
int a;
void Output();
public:
void func();
};
void A::Output(){
cout<<"Hello World"<<endl;
}
void A::func(){
for(int i=0;i<5;i++)
Output();
}
void main()
{
A _a;
_a.Output();
}
每一个Vehicle(卡车)对象都有一个Engine(引擎)对象。每个Engine对象包含零个或者多个齿轮(Cog)对象。请使用类图正确显示了这种关系。
电话机通常在未接打电话时是处于待机状态,当用户开始拨打电话时,电话机就进入了拨号状态。如果呼叫成功,即电话机接通,电话机就处于通话状态;如呼叫失败则停止呼叫,重新进入空闲状态。当有电话接入时,电话机首先会进入响铃的状态;如果用户接听电话,电话机就转入通话状态;如拒接来电,电话机又回到空闲状态。请画出描述该业务的状态图。
请解释用例之间的扩展和包含这两种关系,并分别举出实例。