简单工厂模式(Simple Factory),说他简单是因为我们可以将此模式比作一个简单的民间作坊,他们只有固定的生产线生产固定的产品。也可以称他为静态工厂设计模式,类似于之前提到过静态代理设计模式,一条生产线生产一种产品(一个代理代理一种业务),为了方便大家理解,我们将KFC比作一个简单的工厂,实现代码如下:
代码如下 | 复制代码 |
//建造接口(或者抽象类)提供食物生产方法 interfaceFood{ publicabstractvoidget(); } //汉堡类(后厨生产线)来实现食物生产方法 classHamburgerimplementsFood{ publicvoidget(){ System.out.println("汉堡来了"); } } //炸鸡类(后厨生产线)来实现食物生产方法 classChickenimplementsFood{ publicvoidget(){ System.out.println("炸鸡来了"); } } //KFC(静态工厂类) classKFC{ //提供获取食物的方法(传入的参数name为食客所点食物) publicstaticFood getFood(String name){ /*如果所点食物是炸鸡/汉堡(见名知义) *则实例化该生产线(通知对应后厨生产线) */ if(name.equals("炸鸡")){ returnnewChicken(); } if(name.equals("汉堡")){ returnnewHamburger(); } returnnull; } } //测试类 publicclassTest{ publicstaticvoidmain(String[] args){ KFC kfc =newKFC();//实例化KFC Food m = kfc.getFood("炸鸡"); Food n = kfc.getFood("hanbao");//输入的字符串不符合工厂类对应值 try{ m.get(); n.get(); //添加异常处理(如果没有对应生产线则提示异常处理结果) }catch(NullPointerException e){ System.out.print("没有你要的食物"); } } } |
输出结果:
1 炸鸡来了 2 没有你要的食物
忍者必须死34399账号登录版 最新版v1.0.138v2.0.72
下载勇者秘境oppo版 安卓版v1.0.5
下载忍者必须死3一加版 最新版v1.0.138v2.0.72
下载绝世仙王官方正版 最新安卓版v1.0.49
下载Goat Simulator 3手机版 安卓版v1.0.8.2
Goat Simulator 3手机版是一个非常有趣的模拟游
Goat Simulator 3国际服 安卓版v1.0.8.2
Goat Simulator 3国际版是一个非常有趣的山羊模
烟花燃放模拟器中文版 2025最新版v1.0
烟花燃放模拟器是款仿真的烟花绽放模拟器类型单机小游戏,全方位
我的世界动漫世界 手机版v友y整合
我的世界动漫世界模组整合包是一款加入了动漫元素的素材整合包,
我的世界贝爷生存整合包 最新版v隔壁老王
我的世界MITE贝爷生存整合包是一款根据原版MC制作的魔改整