相关疑难解决方法(0)

从字符串中实例化一个类

在dart中是否可以从字符串中实例化一个类?

例如:

  • javascript中的香草:
var myObject = window[classNameString];
Run Code Online (Sandbox Code Playgroud)
  • Objective-C的:
id myclass = [[NSClassFromString(@"MyClass") alloc] init];
Run Code Online (Sandbox Code Playgroud)

dart dart-mirrors

10
推荐指数
2
解决办法
2615
查看次数

对于 dart 缺乏静态类型语义有哪些好的解决方法?

我来自 C#/F#/Haskell,所以我试图为我习惯于用类型解决的编程问题提出解决方案。

  1. Class A where T : new() in C#,这主要是为了我可以在某处做 new T() 。这会在 Dart 中产生格式错误的类型错误。有没有合理惯用的方法来解决这个问题?也许与工厂?

  2. 我用mixin做了一些实验,在继承的mixin成员名称冲突的情况下,最后一个mixin获胜。所以对于以下内容:抽象类 mixA { void foo(); } 抽象类 mixB { void foo(); } class C 用 mixA, mixB {} new C().foo();

这最终会调用 mixB.foo() 而类 C 使用 mixB 扩展 Object,mixA {} 最终会调用 mixA.foo() 无论如何都可以访问隐藏的 mixin 的成员吗?

假设我将 2 个 mixin 与同名字段混合在一起。子类实例在运行时是否有 2 个字段(只有 1 个是不可访问的)或者对象是否像字典并且每个名称只有 1 个插槽?

dart

1
推荐指数
1
解决办法
310
查看次数

标签 统计

dart ×2

dart-mirrors ×1