飞镖,飞镖。创建匿名课程

时间:2019-11-16 19:31:35

标签: class flutter dart

也许这是一个愚蠢的问题。但是我不敢相信没有资源可以描述。即使来自the official documentation。我正在尝试做的是为下一个函数创建Anonymous类。

enter image description here

如何在Dart中使用自定义函数在Kotlin中创建类似于匿名类的匿名类?

Handler(Looper.getMainLooper()).post(Runnable() {
    @override
    open fun run() {
        //...
    }

    private fun local() {
       //....
    }
})

1 个答案:

答案 0 :(得分:1)

Dart不支持创建匿名类。

您无法做的事。

另一方面,您可以创建匿名函数。因此,您可以使用它来模仿匿名类。

想法是添加抽象类的构造函数,以将其实现推迟到回调中。

abstract class Event {
  void run();
}

class _AnonymousEvent implements Event {
  _AnonymousEvent({void run()}): _run = run;

  final void Function() _run;

  @override
  void run() => _run();
}

Event createAnonymousEvent() {
  return _AnonymousEvent(
    run: () => print('run'),
  );
}

它与匿名类并不完全相同,并且更接近装饰器模式。但是它应该涵盖大多数用例。