【问题标题】:dart: is there a way to avoid calling "super" every time I extend a class?dart:有没有办法避免每次我扩展课程时都调用“超级”?
【发布时间】:2020-08-04 15:18:39
【问题描述】:

我猜下面的代码比任何解释都清楚

https://dartpad.dartlang.org/a5107762d7f5d564f0f20206ddbd48d1

关于标题:有没有办法避免每次扩展类时都调用“super”?

谢谢

【问题讨论】:

  • 如果基类有一个不带参数的默认构造函数,你就不需要显式调用super()。否则,没有。派生类必须以某种方式调用基类构造函数;如果您没有明确使用super,并且如果基类构造函数不是默认构造函数或者如果它需要参数,编译器如何知道应该调用哪个?
  • 我太难了,我只是有人对此有一个hacky解决方法
  • 对于需要将参数传递给基类构造函数的架构,这是不可能的。您可能可以重新设计您的类,以便基类提供ab getter 并依赖派生类覆盖它们,然后基类构造函数可以不带参数。

标签: flutter inheritance dart abstract-class super


【解决方案1】:

显然答案是否定的,但我不认为有向 dartlang 提出功能请求的依据

【讨论】:

    猜你喜欢
    • 2014-10-31
    • 2013-04-17
    • 1970-01-01
    • 2018-07-11
    • 2023-03-22
    • 2023-04-01
    • 1970-01-01
    • 2019-09-07
    • 1970-01-01
    相关资源
    最近更新 更多