qwb0614

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  187 随笔 :: 0 文章 :: 0 评论 :: 2048 阅读

实验2:简单工厂模式

本次实验属于模仿型实验,通过本次实验学生将掌握以下内容:

1、理解简单工厂模式的动机,掌握该模式的结构;

2、能够利用简单工厂模式解决实际问题。

[实验任务一]:女娲造人

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

实验要求:

1.  画出对应的类图;

 

 

2.提交源代码;

3.注意编程规范。

复制代码
public class Man implements Person{
    @Override
    public void create() {
        System.out.println("造男人");
    }
}
public class Nvwa {
    public static Person getPerson(String person) {
        if (person.equalsIgnoreCase("M")) {
            return new Man();
        } else if (person.equalsIgnoreCase("W")) {
            return new Woman();
        } else if (person.equalsIgnoreCase("R")) {
            return new Robot();
        } else {
            System.out.println("对不起,不能造该类人");
            return null;
        }
    }
}
public interface Person {

    void create();
}
public class Robot implements Person{
    @Override
    public void create() {
        System.out.println("造Robot");
    }
}
public class Woman implements Person{
    @Override
    public void create() {
        System.out.println("造女人");
    }
}
public class Main {
    public static void main(String[] args) throws Exception {
        Scanner in = new Scanner(System.in);
        System.out.print("请输入参数: ");
        String s = in.nextLine();
        Person person = Nvwa.getPerson(s);
        person.create();
        in.close();
    }
}
复制代码

 

posted on   嘎嘎鸭1  阅读(9)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示