标签:
二十三种设计模式分为三大类:
创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
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 }
Android设计模式——抽象工厂模式(Abstract Factory)
标签:
原文地址:http://www.cnblogs.com/yuge790615/p/4783162.html