看了下源码, InjectionAwareInterface 里面主要是为了设置和获得容器句柄: setDI()/getDI()
翻了下 Request/Response ,发现都是自己实现了 InjectionAwareInterface ,这样每个 Service 都可以自己拿到 $di 句柄,自己去拿之前注册进去的依赖。
想问下,为何不弄个基类,比如 Component ,把 setDI()/getDI() 写到基类里面,或者直接用 construct 代替 set ,看到 Application 基类里面是这么搞的,那为啥还要 interface 那种实现?