dart - Dart使用或不使用抽象关键字之间有何区别?

标签 dart

嗨,我只是想知道提供抽象关键字之间是否有区别。

// with
abstract class A {}

class B extends A {}

// without
class A {}

class B extends A {}

我应该给它吗?

最佳答案

使用abstract,您可以省略方法和getter / setter方法的实现

// with
abstract class A {
  int foo();
  String get bar;
  set baz(String value);
}

var a = A(); // error about instantiating abstract class

class B extends A {
  // error about missing implementations
}

var b = B(); // ok

// without
class A {
  int foo(); // error about missing implementation
  String get bar; // error about missing implementation
  set baz(String value); // error about missing implementation
}

class B extends A {}

关于dart - Dart使用或不使用抽象关键字之间有何区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54211817/

相关文章:

android - 如何在 Flutter 中禁用 FlatButton 的飞溅突出显示?

dart - 在 Flutter 中以编程方式扩展 ExpansionTile

linux - Dart 语言 : run server side application

dart - 如何在事件之上创建一个透明的全屏对话框 - Flutter

flutter - 如何取消选择 flutter 中的单选按钮?

flutter - 如何从方法返回两个值

flutter - 使用手势动态调整位置大小和旋转 Flutter 小部件

dart - flutter 开关 - onChanged 不改变

dart - Dart `build_config`重命名 `buildStep.inputId`文件

rest - 未处理的异常:类型 'int'不是类型转换中类型 'String'的子类型