这是基于地图的课程吗?也许有两种类型的类?

时间:2018-12-30 09:32:08

标签: dart flutter

flutter example project上,我偶然发现了以下几行:

abstract class BlocEvent extends Object {}
abstract class BlocState extends Object {}

abstract class BlocEventStateBase<BlocEvent, BlocState> {}

这是基于地图的课程吗?还是也许有两种类型的课程?

<BlocEvent, BlocState>是什么意思?

1 个答案:

答案 0 :(得分:1)

这是generic type declaration,但正如@yelliver指出的那样,您发布的示例是不正确的,因为BlocEvent中的BlocState<>仅被解释为泛型类型标识符(与具有相同名称的类无关)。

这很有意义:

abstract class BlocEvent extends Object {}
abstract class BlocState extends Object {}

abstract class BlocEventStateBase<T extends BlocEvent, S extends BlocState> {}

此外,请注意,conventions用于命名类型参数。