使用篇二,简单的注入

准备工作

1、我们要开始写例子了
2、为了例子的规范与简洁
3、我们写一个基类,后面继承即可
    public abstract class Test : DisposableObject
    {

        public Test()
        {
            Framework.BindEnvUpdate(Update, EnvironmentType.Ev0);
            Framework.BindEnvDispose(Dispose, EnvironmentType.Ev0);

            Log.L("开始测试----------->" + GetType());
            Start();
        }
        protected abstract void Start();

        protected abstract void Update();
        protected abstract void Stop();

        protected override void OnDispose()
        {
            Stop();
            Framework.UnBindEnvDispose(Dispose, EnvironmentType.Ev0);

            Framework.UnBindEnvUpdate(Update, EnvironmentType.Ev0);
        }
    }
让我们看看做了什么?
如此简单
	1、在构造函数里面绑定了环境的   刷新方法 以及 释放方法
	2、在释放方法内 解绑 
	3、定义了几个虚方法
	
这样我们只要实例化一个对象就可以测试了
下面让我们开始 快乐的注入吧

令人心旷神怡的注入大法一

    public class InjectTest : Test
    {
        public interface ITestObject
        {
            void ToDo();
        }
        public class TestObject : ITestObject
        {
            public void ToDo()
            {
                Log.L("NNN");
            }
        }
        [Inject]
        public ITestObject _object;
        protected override void Start()
        {
            Framework.env0.container.Subscribe<ITestObject, TestObject>();
            Framework.env0.container.Inject(this);
            _object.ToDo();
        }

        protected override void Stop()
        {
        }

        protected override void Update()
        {
        }
    }

输出

在这里插入图片描述

让我们看看做了什么?
	1、声明了一个接口 ITestObject
	2、声明了一个类 TestObject  继承自 ITestObject
	3、像注入容器里面以 ITestObject 的名义 注入了类型 TestObject  
	4 、让容器把自己  注入以下参数
	5、 调用 自己 注入的字段的方法
	
过程及其简单 ,效果立竿见影 
这就是注入大法之一  反射注入,
强调性能之处慎用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值