C# 抽象工厂模式
来源:互联网 发布:ios10.3.3完美越狱mac 编辑:程序博客网 时间:2024/06/05 23:12
using UnityEngine;
using System.Collections;
public abstract class ResourceAbstractFactory : MonoBehaviour
{
public abstract UIResourceAbstract CreateUIManager();
public abstract AudioResourceAbstract CreateAudioManager();
}
public class AssistantResourceManager : ResourceAbstractFactory
{
public override UIResourceAbstract CreateUIManager()
{
return new AssistantUIResourceManager();
}
public override AudioResourceAbstract CreateAudioManager()
{
return new AssistantAudioResourceManager();
}
}
public class PrimaryResourceManager : ResourceAbstractFactory
{
public override UIResourceAbstract CreateUIManager()
{
return new PrimaryUIResourceManager();
}
public override AudioResourceAbstract CreateAudioManager()
{
return new PrimaryAudioResourceManager();
}
}
public abstract class UIResourceAbstract
{
public abstract void A();
public abstract void B();
}
public abstract class AudioResourceAbstract
{
public abstract void C();
public abstract void D();
}
public class PrimaryUIResourceManager : UIResourceAbstract
{
public override void A()
{
Debug.Log("A_Primary");
}
public override void B()
{
Debug.Log("B_Primary");
}
}
public class PrimaryAudioResourceManager : AudioResourceAbstract
{
public override void C()
{
Debug.Log("C_Primary");
}
public override void D()
{
Debug.Log("D_Primary");
}
}
public class AssistantUIResourceManager : UIResourceAbstract
{
public override void A()
{
Debug.Log("A_Assistant");
}
public override void B()
{
Debug.Log("B_Assistant");
}
}
public class AssistantAudioResourceManager : AudioResourceAbstract
{
public override void C()
{
Debug.Log("C_Assistant");
}
public override void D()
{
Debug.Log("D_Assistant");
}
}
using System.Collections;
public abstract class ResourceAbstractFactory : MonoBehaviour
{
public abstract UIResourceAbstract CreateUIManager();
public abstract AudioResourceAbstract CreateAudioManager();
}
public class AssistantResourceManager : ResourceAbstractFactory
{
public override UIResourceAbstract CreateUIManager()
{
return new AssistantUIResourceManager();
}
public override AudioResourceAbstract CreateAudioManager()
{
return new AssistantAudioResourceManager();
}
}
public class PrimaryResourceManager : ResourceAbstractFactory
{
public override UIResourceAbstract CreateUIManager()
{
return new PrimaryUIResourceManager();
}
public override AudioResourceAbstract CreateAudioManager()
{
return new PrimaryAudioResourceManager();
}
}
public abstract class UIResourceAbstract
{
public abstract void A();
public abstract void B();
}
public abstract class AudioResourceAbstract
{
public abstract void C();
public abstract void D();
}
public class PrimaryUIResourceManager : UIResourceAbstract
{
public override void A()
{
Debug.Log("A_Primary");
}
public override void B()
{
Debug.Log("B_Primary");
}
}
public class PrimaryAudioResourceManager : AudioResourceAbstract
{
public override void C()
{
Debug.Log("C_Primary");
}
public override void D()
{
Debug.Log("D_Primary");
}
}
public class AssistantUIResourceManager : UIResourceAbstract
{
public override void A()
{
Debug.Log("A_Assistant");
}
public override void B()
{
Debug.Log("B_Assistant");
}
}
public class AssistantAudioResourceManager : AudioResourceAbstract
{
public override void C()
{
Debug.Log("C_Assistant");
}
public override void D()
{
Debug.Log("D_Assistant");
}
}
0 0
- C# 抽象工厂模式
- C#工厂模式-抽象工厂
- c#工厂模式与抽象工厂模式
- c#工厂模式与抽象工厂模式
- c#工厂模式与抽象工厂模式
- C#抽象工厂模式学习
- C#抽象工厂模式实现
- C# 实现抽象工厂模式
- C# 设计模式 之 抽象工厂模式
- C#设计模式之抽象工厂模式
- c#设计模式--抽象工厂模式
- C#设计模式:抽象工厂方法模式
- C#设计模式之抽象工厂模式
- C# 设计模式----抽象工厂模式
- 【C#设计模式-抽象工厂模式】
- C#设计模式—抽象工厂模式
- C#设计模式--抽象工厂模式
- C#设计模式(4)-抽象工厂模式
- 关于国际化的两种方式的用法
- 基于内容的图像检索
- jquery 插件开发------简单选择插件模版
- 广播机制
- char 类型的范围是 : 128~+127
- C# 抽象工厂模式
- 括号配对问题
- c3p0详细配置
- HTTP协议知识总结
- Json格式对象转换为XML
- Dexposed:Android平台免Root无侵入AOP框架
- 在myeclipse8.5中为项目添加单元测试
- 安卓有哪些很好用的小众APP
- python:undefined symbol: PyUnicodeUCS*问题