Flutter 省道颤振导入和扩展之间有什么区别?

Flutter 省道颤振导入和扩展之间有什么区别?,flutter,inheritance,dart,import,extends,Flutter,Inheritance,Dart,Import,Extends,我仍然不理解导入类和扩展类之间的区别。我的意思是,如果我只是导入类,我仍然可以使用它的构造函数和方法,那么使用扩展有什么好处呢 请随意使用我提供的两个类,或者根据您的方便对它们进行更改 Class A { final String a; A({this.a}); void printA(){ print(this.a); } } Class B { final String b; B({this.b}); void printB(){ print(t

我仍然不理解导入类和扩展类之间的区别。我的意思是,如果我只是导入类,我仍然可以使用它的构造函数和方法,那么使用
扩展
有什么好处呢

请随意使用我提供的两个类,或者根据您的方便对它们进行更改

Class A {
  final String a;
  A({this.a});
  void printA(){
    print(this.a);
  }
}

Class B {
  final String b;
  B({this.b});
  void printB(){
    print(this.b);
  }
}

import
语句使另一个类在该文件中可见

extends
关键字使一个类从另一个类继承

当你说类B扩展了A时,B继承了A的所有属性和方法


作为参考:

感谢您的回答,但在导入时,我仍然可以访问导入的类的属性和方法。是的,这就是导入的目的。您可以通过创建类的实例(或直接访问它们的静态成员)来访问它们。混淆在哪里?我看不到扩展类的用途,我可以通过导入它来访问它的所有属性和方法。如果你想要OOP,可以使用扩展类(比如圆形或矩形,两个不同的类都不同,但都可以归类为类型Shape,这是它们的超类)。