# 动态参数 >[info] 此章节我将会列举可以使用的动态参数列表。 所有的动态参数与静态参数一样,可以在参数中使用`@Depend`注解来指定名称或类型,也可以不使用注解,通过参数类型进行自动填装。 >[danger] 注①:基础数据类型(8大基础数据类型及其封装类 + String类型) \*\* 不可以\*\* 直接使用类型注入。 >[danger] 注②:动态参数仅可以使用在监听函数的参数中,无法在其他地方被注入,例如成员变量。 > 如果参数存在多个name,将会使用 `|` 分隔 > 表格中出现的`{classname}` 代表参数对象真正所属类的类名 > 表格中出现的`{toString}` 代表参数对象的toString字符串, 一般会出现在枚举类型的参数中。 | 参数类型 | 参数描述 | 参数name | | --- | --- | --- | | `? extends MsgGet` | 监听到的消息,一般使用的MsgGet的子接口类型 | `msgGet` | | `AtDetection` | 用于判断消息文本中是否被at了 | `atDetection` | | `MsgGetTypes` | 监听到的消息的消息类型 | `msgType` | | `MsgSender` | 送信器 | `msgSender` | | `? extends SenderSendList` | 消息发送器,等同于`MsgSender.SENDER` | `sendList` | | `? extends SenderSetList` | 状态设置器,等同于`MsgSender.SETTER` | `setList` | | `? extends SenderGetList` | 信息获取器,等同于`MsgSender.GETTER` | `getList` | | `ListenContext` | 监听上下文对象,一般用于不同监听器的相互交互以及监听器的拦截 | `context` |