可以在Dart中实现多个接口吗?如果是这样,是否可以限制一个通用参数来实现这两种功能?

可以在Dart中实现多个接口吗?如果是这样,是否可以限制一个通用参数来实现这两种功能?,dart,Dart,我来自c#背景,仍在学习Dart。我对DART继承和泛型感到困惑 我的要求是: 具有属性“id”的基类称为A 定义方法“speak()”的接口称为B 这两件事必须是正交的。一些具体的类将扩展A,一些将实现B,一些将同时具有这两个 现在。。。。我想要一个方法: int mymethod<T extends A and also implements B>(T item){ item.speak(); return item.id; }; int-mymethod(T项){ i

我来自c#背景,仍在学习Dart。我对DART继承和泛型感到困惑

我的要求是:

具有属性“id”的基类称为A

定义方法“speak()”的接口称为B

这两件事必须是正交的。一些具体的类将扩展A,一些将实现B,一些将同时具有这两个

现在。。。。我想要一个方法:

int mymethod<T extends A and also implements B>(T item){
  item.speak();
  return item.id;
};
int-mymethod(T项){
item.speak();
返回item.id;
};

这可能吗?我发现自己必须构建继承链(B扩展A),以便能够执行泛型类型参数约束。除了集合的非常简单的泛型之外,没有太多的例子。有人能给我一个关于继承和泛型系统的解释吗?它能为我提供一个清晰的概念模型来使用吗?

实现多个接口是可能的

只需编写
类SomeClass实现Interface1,Interface2{…}

不幸的是,如上所述,创建需要实现多个接口的泛型是不可能的