ABAP 中没有 @Injectable(),但可以用更显式的方式完成依赖注入
2026/7/13 14:33:29 网站建设 项目流程

在一个典型的Angular项目里,订单页面可能依赖价格服务,价格服务又依赖汇率服务和日志服务。开发代码里给服务类加上@Injectable(),再通过构造器声明依赖,Angular的依赖注入系统便会查找对应的Provider,创建实例,并按照注入器层级管理对象的生命周期。Angular 官方文档对@Injectable()的描述很直接,它会标记一个类,使编译器生成创建该类依赖关系所需的元数据。配合providedIn,服务还可以自动注册到特定注入范围,也可以通过应用、路由、组件等位置的providers做手工注册。(Angular)

把这个问题放进ABAP语境,结论并不是找一个拼写不同但作用完全相同的注解。标准ABAP Objects没有一个与Angular @Injectable()一一对应的语言注解,也没有一个面向任意普通类、自动扫描类元数据、解析依赖图、选择实现类并管理层级作用域的通用依赖注入容器。ABAP可以完整实现依赖注入这种设计思想,只是依赖关系通常由构造器参数、接口引用、工厂类和应用入口显式连接,而不是由一个装饰器驱动。

这个差别很容易被表面语法遮住。Angular

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询