【发布时间】:2021-11-04 06:45:22
【问题描述】:
在 Dart 中,是否有可能在非泛型类中拥有泛型方法,就像在 Java 中一样?
我使用Getx 进行状态管理、DI 和路由,但这个问题并不特定于 Getx 或 Flutter。
我有AuthService,它处理身份验证并设置登录用户,例如Rxn<AppUser>。我有 3 种类型的用户:Customer extends AppUser、Seller extends AppUser 和 Admin extends AppUser。
我想将可观察的用户更改为:Rxn<? extends AppUser> currentUser = Rxn()。
我尝试了以下语法,但不起作用。
class AuthService extends GetxService {
T Rxn<T extends AppUser> currentUser = Rxn();
...
}
直接回答我的问题:
Dart 也支持泛型类型的继承(与 Java 不同)。所以,Rxn<AppUser> currentUser = Rxn<Patient>() 在 Dart 中是可能的。我不需要通配符或任何通配符。感谢@jamesdlin 的回答/cmets。
【问题讨论】:
标签: flutter dart generics flutter-getx