接口与反射

左直拳

 

接口的好处:

只要继承了接口的类,就可以强制转换成接口指定的类型,这样子,它们尽管各不相同,但此刻可以当成同一样东西来使用,只要是该接口规定的,它都有。

并且类可以继承多个接口,所以可以成为一个多面手,要它是什么,它就是什么,爽啊。

由于继承类必须严格地一一实现接口定义的东西,所以也起到约束规范的作用。

 

反射的好处:

我对反射了解不深,但是利用反射,可以构造出DLL里的类实例。就是说,给我一个DLL,可以将里面的类一一召唤出来,构造之,调用之,运行之。

 

由此,接口和反射结合在一起,真是天作之合:所有的类继承接口,反射出来后,强制转换成接口,逐一运行,根本不用管你是什么类,DLL里面有多少类,就运行多少,这就是一个引擎啊。

好处不言而喻:DLL里面新加了类,调用方不必更改,它会自动新增调用。

 

不过要注意,接口不能跟继承类合在一个DLL里面,否则强制转换要失败。最好是接口独立成一个DLL,引擎和用于反射的类都引用它。