女娲造人

使用简单工厂模式模拟女娲(Nvwa)造人(Person),如果传入参数M,则返回一个Man对象,如果传入参数W,则返回一个Woman对象,如果传入参数R,则返回一个Robot对象。请用程序设计实现上述场景。

1. 类图:

 

2. Java源代码:

(1)Person.java:

package test2;

 

public interface Person {

 

public void make();

 

}

(2)Woman.java:

package test2;

 

public class Woman implements Person{

 

public Woman() {

}

 

public void make() {

 

System.out.print("生产女人");

 

}

}

(3)Man.java:

package test2;

 

public class Man implements Person{

 

public Man() {

 

    }

    public void make(){

    

        System.out.print("生产男人");

        

    }

}

(4)Robot.java:

package test2;

 

public class Robot implements Person{

 

public Robot() {

    }

 

    public void make(){

    

        System.out.print("生产机器人");

        

    }

}

(5)Nvwa.java:

package test2;

public class Nvwa {

 

public Nvwa() {

 

}

 

public static  Person Personjudge(String arg ) {

        //判断参数,再选择调用哪个类

        if(arg.equalsIgnoreCase("M"))

        {

            return new Man();

        }else if(arg.equalsIgnoreCase("W"))

        {

            return new Woman();

        }else if(arg.equalsIgnoreCase("R"))

        {

            return new Robot();

        }else

        {

            return null;

        }

    }

}

(6)Test.java:

package test2;

 

import java.util.Scanner;

 

public class Test {

 

public static void main(String[] args) {

// TODO Auto-generated method stub

Scanner scan = new Scanner(System.in);

  System.out.print("请输入参数:");

  String s = scan.nextLine();

  

try{

            Person p = Nvwa.Personjudge(s);

            p.make();

        }catch(Exception e){

            System.out.println(e.getMessage());

        }

scan.close();

}

}

 实现截图:

 

 

 

 

posted on 2021-10-16 17:17  白日梦想家~  阅读(93)  评论(0编辑  收藏  举报