简单工厂模式---女娲造人
作者:互联网
今天做了简单工厂模式的实验,下面是实验过程和步骤:
[实验任务一]:女娲造人
使用简单工厂模式模拟女娲(Nvwa)造人(Person),如果传入参数M,则返回一个Man对象,如果传入参数W,则返回一个Woman对象,如果传入参数R,则返回一个Robot对象。请用程序设计实现上述场景。
实验要求:
1. 画出对应的类图;
2. 提交源代码;
Java部分:
package Factory;
public interface Nvwa {
public void create();
}
package Factory;
public class Man implements Nvwa{
public void create() {
System.out.println("制造了男性");
}
}
package Factory;
public class Woman implements Nvwa{
public void create() {
System.out.println("制造了女性");
}
}
package Factory;
public class Robot implements Nvwa{
public void create() {
System.out.println("制造了机器人");
}
}
package Factory;
public class play {
public static Nvwa getperson(String arg) {
Nvwa nvwa=null;
if(arg.equalsIgnoreCase("M")) {
nvwa=new Man();
System.out.println("女娲要制造男性了");
}
else if(arg.equalsIgnoreCase("W")) {
nvwa=new Woman();
System.out.println("女娲要制造女性了");
}
else if(arg.equalsIgnoreCase("R")) {
nvwa=new Robot();
System.out.println("女娲要制造机器人了");
}
return nvwa;
}
}
package Factory;
public class Client {
public static void main(String[] args) {
Nvwa N;
N=play.getperson("R");
N.create();
}
}
C++部分:
#include<iostream>
#include<string>
using namespace std;
class Nvwa{
public :
virtual void create() = 0;
};
class Man : public Nvwa{
public :
void create(){
cout<<"制造了男性"<<endl;
}
};
class Woman : public Nvwa{
public :
void create() {
cout<<"制造了女性"<<endl;
}
};
class Robot : public Nvwa{
public :
void create() {
cout<<"制造了机器人"<<endl;
}
};
class play{
public :
static void getperson(string arg) {
Nvwa *nvwa;
if(arg=="M") {
nvwa=new Man();
cout<<"女娲要制造男性了"<<endl;
}
else if(arg=="W") {
nvwa=new Woman();
cout<<"女娲要制造女性了"<<endl;
}
else if(arg=="R") {
nvwa=new Robot();
cout<<"女娲要制造机器人了"<<endl;
}
nvwa->create();
}
};
int main(){
play a;
a.getperson("W");
return 0;
}
截图:
标签:女娲,create,Nvwa,工厂,---,class,void,public,nvwa 来源: https://www.cnblogs.com/092e/p/15530588.html