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

 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("请输入电脑的品牌:");
14             string brand = Console.ReadLine();
15             NoteBook note = Factory.SelectNoteBook(brand);
16             if (note != null)
17             {
18                 note.GetBrand();
19             }
20             else
21             {
22                 Console.WriteLine("没有该品牌...");
23             }
24             Console.ReadKey();
25
26         }
27     }
28
29     abstract class NoteBook
30     {
31         public abstract void GetBrand();
32     }
33
34     class Lenevo:NoteBook
35     {
36         public override void GetBrand()
37         {
38             Console.WriteLine("我是联想电脑");
39         }
40     }
41     class Acer : NoteBook
42     {
43         public override void GetBrand()
44         {
45             Console.WriteLine("我是宏碁电脑");
46         }
47     }
48
49     class Factory
50     {
51         //在这里实现了简单工厂模式  需要一个父类对象,实例化子类对象,返回父类对象
52         public static NoteBook SelectNoteBook(string brand)
53         {
54             NoteBook note = null;
55             switch (brand)
56             {
57                 case "联想":
58                     note = new Lenevo();
59                     break;
60                 case "宏碁":
61                     note = new Acer();
62                     break;
63                 default:
64                     break;
65             }
66             return note;
67         }
68     }
69
70 }

这是我刚学习的,本文如果有什么错误欢迎提出来。谢谢大家的赐教啦...
时间: 2024-10-06 22:09:38

简单工厂模式小例子 写的测试过了的相关文章

工厂模式小例子 getDaoImp

/**新建一个工厂类,创建dao层对象(单例模式) */ public class DaoFactory{ private static DaoFactory daoFactory;//私有化自身 private DaoFactory(){};//私有化构造方法 static{ if(daoFactory==null){ synchronized(DaoFactory.class){ If(daoFactory==null){ daoFactory =new DaoFactory(); } }

简单工厂模式 - python

1.典型的适合简单工厂模式的例子是计算器 def create_operator(op): if op == '+': return AddOperation() elif op == '-': return SubOperation() elif op == '*': return MulOperation() elif op == '/': return DivOperation() op = create_operator('+') op.Calc(1, 2) 简单工厂模式的组成要素 工厂

简单工厂模式例子

/** 简单工厂模式:一个工厂生产三类汽车 高档汽车(TopCar).中等汽车(MidCar).低档汽车(LowCar) 生产汽车需要方法,定义一个ICar接口类定义其中的方法名. 三种汽车去实现这些方法. 定义一个工厂类 负责创建汽车对象 以上就是一个简单工厂模式的雏形.即程序开发者不用反复创建对象,只需要调用工厂模型便可以创建相应的对象. 注意用public定义的类,应该是一个独立的*.java文件.这里没有作区分. */ public interface ICar{ //该类是定义创建汽车

闭包 构建函数 简单工厂模式

今天收获比较多,仿佛无意中打通了七筋八脉,想通了一些原理性的东西.对js有了更深的理解. 首先说说闭包,闭包在我们实际开发中处处被用到,那个它到底是个什么东西呢? var user=(function(){ var USER={ name:"mapleTao", password:"123456" } return { getName:function(){ return USER.name; }, getPassword:function(){ return US

(三) 简单工厂模式

转载: http://www.cnblogs.com/zuoxiaolong/p/pattern4.html 上一章我们着重讨论了代理模式,以及其实现原理,相信如果你看完了整篇博文,应该就对代理模式很熟悉了. 本章我们讨论简单工厂模式,LZ当初不小心夸下海口说不和网络上传播的教学式模式讲解雷同,所以现在感觉写一篇博文压力颇大. 如何来介绍简单工厂呢,LZ着实费了不少心思,这个模式本身不复杂,但其实越是不复杂的模式越难写出特点,因为它太简单. 为了便于各位看后面例子的时候容易理解,LZ这里先给出引

设计模式在cocos2d-x中的使用--简单工厂模式(Simple Factory)

什么是简单工厂模式? 从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类. 简单工厂模式在cocos2d-x中怎么用,我们通过下面的小例子来了解一下. 假如我们在开发一款类似魔兽的RPG游戏,在游戏中会出现很多种族的角色,如:人族.兽族. 这些种族一般都会定义为一个类,如果兽族Orc类,人族Human类. 兽族.人族两个类都同样属于种族,那么我们可以

设计模式之_简单工厂模式、工厂方法模式、抽象工厂模式 、策略模式、策略与工厂的区别(转)

一.前言 话说十年前,有一个爆发户,他家有三辆汽车(Benz(奔驰).Bmw(宝马).Audi(奥迪)),还雇了司机为他开车.不过,爆发户坐车时总是这样:上Benz车后跟司机说“开奔驰车!”,坐上Bmw后他说“开宝马车!”,坐上 Audi后他说“开奥迪车!”.你一定说:这人有病!直接说开车不就行了?!而当把这个爆发户的行为放到我们程序语言中来,我们发现C语言一直是通过这种方式来坐车的 幸运的是这种有病的现象在OO语言中可以避免了.下面以Java语言为基础来引入我们本文的主题:工厂模式! 二.简介

面向对象之简单工厂模式

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Interface { class InterfaceTest { static void Main(string[] args) { #region 测试Cat,Monkey,Bear类 introduction test; for (int i = 1; i<=3; i++) { switch (i)

简单工厂模式 - 学习笔记

工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来,达到提高灵活性的目的. 工厂模式可以分为三类: 简单工厂模式(Simple Factory) 工厂方法模式(Factory Method) 抽象工厂模式(Abstract Factory) 这三种模式从上到下逐步抽象,并且更具一般性. 简单工厂模式又称静态工厂方法模式.重命名上就可以看出这个模式一定很简单.它存在的目的很简单:定义一个用于创建对象的接口.工厂方法模式去掉了简单工厂模式中工厂方法的静态属性,使得它可以被子类