博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java之简单工厂模式详解
阅读量:5052 次
发布时间:2019-06-12

本文共 1366 字,大约阅读时间需要 4 分钟。

设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化。项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应的原理来与之对应,每一个模式描述了一个在我们周围不断重复发生的问题,下面给大家带来一个简单工厂的小例子

本文介绍的是生产男人或者是女人的工厂,目录结构如下图:

1、创建Human接口,接口中有一个say()方法

public interface Human {    public void say();}

2、创建男人类和女人类,分别实现Human接口,并添加说话方式

public class Man implements Human{    @Override    public void say() {        System.out.println("男人");    }    }
public class Woman implements Human{    @Override    public void say() {        System.out.println("女人");    }}

3、创建简单工厂类,静态方法用于获取实例

public class SampleFactory {    public static Human makeHuman(String type) {        if(type.equals("man")) {            Human man = new Man();            return man;        }else if(type.equals("woman")) {            Human woman = new Woman();            return woman;        }else {            System.out.println("生产失败");            return null;        }    }        }

4、创建测试类测试简单工厂

public class Main {    public static void main(String[] args) {        Human man = SampleFactory.makeHuman("man");        man.say();        Human woman = SampleFactory.makeHuman("woman");        woman.say();        Human error = SampleFactory.makeHuman("asdf");    }        }

下图是输出的结果,当输入“man”是输出男人,当输入“womoan”时输出女人,当随便输出字符时提示生产失败!

 

转载于:https://www.cnblogs.com/zhanzhuang/p/8644603.html

你可能感兴趣的文章
《梦断代码》读书笔记(三)
查看>>
FreeMarker解析json数据
查看>>
Java8 Lambda表达应用 -- 单线程游戏server+异步数据库操作
查看>>
次序+“选择不重复的记录”(3)——最大记录
查看>>
Codeforces 450 C. Jzzhu and Chocolate
查看>>
[Unity3D]Unity3D游戏开发MatchTarget的作用攀登效果实现
查看>>
ACdream 1115 Salmon And Cat (找规律&&打表)
查看>>
JSON、JSONP、Ajax的区别
查看>>
AngularJS学习篇(一)
查看>>
关于Xshell无法连接centos6.4的问题
查看>>
css3动画——基本准则
查看>>
javaweb常识
查看>>
Java注解
查看>>
web自己主动保存表单
查看>>
一个小的日常实践——高速Fibonacci数算法
查看>>
机器学些技法(9)--Decision Tree
查看>>
drf权限组件
查看>>
输入月份和日期,得出是今年第几天
查看>>
Qt中子窗口全屏显示与退出全屏
查看>>
使用brew安装软件
查看>>