工厂模式简单例子

工厂模式:

 1 package factorymode;
 2 /**
 3  * 工厂模式简单例子
 4  * @author Administrator
 5  *
 6  */
 7 public class FactoryDemo {
 8
 9     public static void main(String[] args) {
10         IFruit fruit = Factory.getFrit("橘子");
11         if(fruit != null) {
12             System.out.println(fruit.get());
13         } else {
14             System.out.println("不存在");
15         }
16     }
17
18 }
19
20 interface IFruit {
21     public String get();
22 }
23
24 class Factory {
25     public static IFruit getFrit(String name) {
26         //根据调用者传进来的描述,返回调用者所需要的对象实例
27         if(name.equals("苹果")) {
28             return new Apple();
29         } else if (name.equals("橘子")) {
30             return new Orange();
31         } else {
32             return null;
33         }
34     }
35 }
36
37 class Apple implements IFruit {
38     public String get() {
39         return "采摘苹果";
40     }
41 }
42
43 class Orange implements IFruit {
44     public String get() {
45         return "采摘橘子";
46     }
47 }

原文地址:https://www.cnblogs.com/enjoyjava/p/8192239.html

时间: 2024-10-08 17:39:44

工厂模式简单例子的相关文章

工厂模式——简单工厂模式

工厂模式分三类:简单工厂模式.工厂方法模式.抽象工厂模式. 首先介绍比较简单一种工厂模式——简单工厂模式. 我们以计算器作为一个例子来说明工厂模式到底是什么.作为一个几年前大一从C语言起步的初级程序员,到现在写代码的思维还是停留在结构化编程,虽然Java学了有几年了,总是说面向对象面向对象.但是让实现一个计算器的程序,估计大部分人都会以C语言式的结构化编程来写,几个if语句或者一个switch来搞定.我也同样不例外,为了提高自己的编程水平,所以一点点开始学设计模式.其实在很多开源代码里也有很多经

简单工厂模式小例子 写的测试过了

1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace 笔记本品牌简单工厂模式 8 { 9 class Program 10 { 11 static void Main(string[] args) 12 { 13 Console.WriteLine("请输入电脑的品牌:&q

JAVA设计模式之工厂模式(简单工厂模式+工厂方法模式)

在面向对象编程中, 最通常的方法是一个new操作符产生一个对象实例,new操作符就是用来构造对象实例的.但是在一些情况下, new操作符直接生成对象会带来一些问题.举例来说, 许多类型对象的创造需要一系列的步骤: 你可能需要计算或取得对象的初始设置; 选择生成哪个子对象实例; 或在生成你需要的对象之前必须先生成一些辅助功能的对象. 在这些情况,新对象的建立就是一个 "过程",不仅是一个操作,像一部大机器中的一个齿轮传动. 模式的问题:你如何能轻松方便地构造对象实例,而不必关心构造对象实

设计模式之工厂模式-简单工厂(02)

设计模式分创建型.行为型.结构型: 工厂模式属于创建型模式,分(1)简单工厂(静态工厂)(2)工厂方法(3)抽象工厂,下面分别通过代码来介绍(本篇文章北风网的视频看后写的): (一)简单工厂 简单工厂描述:通过专门定义的一个类来创建其他类的实例,被创建的实例通常都具有共同的父类: 简单工厂的角色及其职责:(1)工厂角色[creator]:该模式的核心,负责创建所有实例的内部逻辑,工厂类可以被外界直接调用,创建所需要的产品实例(2)抽象角色[Product]:简单工厂模式 所创建的所有对象的父类,

详解设计模式之工厂模式(简单工厂+工厂方法+抽象工厂)

园子里关于23种设计模式的博文已经可以说是成千上万.车载斗量.屯街塞巷.不计其数.数不胜数.摩肩接踵.汗牛充栋.车水马龙.门庭若市.琳琅满目直至让人眼花缭乱了.在这样的大环境下之所以来写设计模式类的博文,并不是像一些"非主流"的爱情观那样"宁缺毋滥". 只是其一呢,因为相当于给自己做一个总结,加深一下自己这方面的认识,因为掌握了和把它写出来我感觉后者还可以对技能有一个提升,其二呢是因为最近公司有一个内部的training需要讲设计模式. v写在前面 在这里呢,需要向

JAVA的反射和工厂模式的例子实现

一.JAVA的反射 在学习反射的时候就没太弄明白,现在看了一些资料认真学习一下,暂时记录此刻的笔记. 1.java反射的概念: 就是java程序运行时才确定哪个类被加载了,编译器不知道该加载哪个类.这种特点就是反射.反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制. 其实我们的本地IDE就是使用了这种机制,当我们敲入某个类名然后按下.点号的时候,自

总结工厂模式---简单工厂、工厂方法、抽象工厂

简单工厂 首先,我们先看一个简单工厂的例子: #coding=utf-8 class Mercedes(object): """梅赛德斯 """ def __repr__(self): return "Mercedes-Benz" class BMW(object): """宝马 """ def __repr__(self): return "BMW&quo

工厂模式,简单工厂模式,抽象工厂模式三者有什么区别

工厂模式,也叫做说虚构造器,在简单工厂中间插入了一个具体产品工厂,这个工厂知道产品构造时候的具体细节,而简单工厂模式的产品具体构造细节是在一个个if/else分支,或者在switch/case分支里面的.工厂模式的好处就在于将工厂和产品之间的耦合降低,将具体产品的构造过程放在了具体工厂类里面.在以后扩展产品的时候方便很多,只需要添加一个工厂类,一个产品类,就能方便的添加产品,而不需要修改原有的代码.而在简单工厂中,如果要增加一个产品,则需要修改工厂类,增加if/else分支,或者增加一个case

工厂模式-简单工厂

1.简单工厂模式 1.1.什么是简单工厂模式 简单工厂模式是类的创建模式,又叫做静态工厂方法模式.简单工厂模式是由一个工厂对象决定创建出哪一类产品类的实例.由一个工厂类根据传入的参数来决定创建出哪一种产品类的实例. 1.2.简单工厂模式的结构 工厂类(Creator)角色:工厂方法模式的核心,含有与应用紧密相关的逻辑.工厂类在客户端的调用下直接创建产品对象.往往由一个具体的Java类实现. 抽象产品(Product)角色:工厂方法模式所创建的对象的父类,或他们共同拥有的接口.抽象产品角色可以用一