码迷,mamicode.com
首页 > 移动开发 > 详细

Android设计模式——抽象工厂模式(Abstract Factory)

时间:2015-09-05 14:58:35      阅读:203      评论:0      收藏:0      [点我收藏+]

标签:

二十三种设计模式分为三大类:

创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。

结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。

行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。 

技术分享
  1 package com.example.main;
  2 
  3 import android.app.Activity;
  4 import android.os.Bundle;
  5 import android.widget.TextView;
  6 
  7 /*
  8  * Android设计模式——抽象工厂模式(Abstract Factory)
  9  */
 10 
 11 public class AbstractFactory extends Activity {
 12 
 13     private TextView tv;
 14     
 15     @Override
 16     protected void onCreate(Bundle savedInstanceState) {
 17         super.onCreate(savedInstanceState);
 18         setContentView(R.layout.create);
 19         
 20         tv = (TextView) findViewById(R.id.appTxt);
 21         
 22         //android制造商
 23         IFactroy androidFactroy = new Google();
 24         
 25         //android产品
 26         IApp androidApp = androidFactroy.produce();
 27         
 28         //发布androidApp
 29         androidApp.sendApp(tv);
 30     }
 31     
 32     /*
 33      * IApp App产品接口
 34      * 发布不同类型App产品
 35      */
 36     
 37     interface IApp{
 38         void sendApp(TextView tv);
 39     }
 40     
 41     /*
 42      * IOSApp产品
 43      */
 44     
 45     class IOSApp implements IApp{
 46 
 47         @Override
 48         public void sendApp(TextView tv) {
 49             tv.setText("This is IOSApp");
 50         }
 51     }
 52     
 53     /*
 54      * AndroidApp产品
 55      */
 56     
 57     class AndroidApp implements IApp{
 58 
 59         @Override
 60         public void sendApp(TextView tv) {
 61             tv.setText("This is AndroidApp");
 62         }
 63     }
 64     
 65     /*
 66      * 工厂接口
 67      * 不同类型APP制造商
 68      */
 69     
 70     interface IFactroy{
 71         IApp produce();
 72     }
 73     
 74     /*
 75      * 苹果公司
 76      * 制定IOSApp规则
 77      */
 78     
 79     class Apple implements IFactroy{
 80 
 81         @Override
 82         public IApp produce() {
 83             return new IOSApp();
 84         }
 85         
 86     }
 87     
 88     /*
 89      * 谷歌公司
 90      * 制定AndroidApp规则
 91      */
 92     
 93     class Google implements IFactroy{
 94 
 95         @Override
 96         public IApp produce() {
 97             return new AndroidApp();
 98         }
 99         
100     }
101 }
View Code

 

Android设计模式——抽象工厂模式(Abstract Factory)

标签:

原文地址:http://www.cnblogs.com/yuge790615/p/4783162.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!