首页 > 解决方案 > Flutter Basics 谁能解释一下这个简单的代码(6行)

问题描述

class Recipe {
  String label;
  String imageUrl;
  
  Recipe(
    this.label,
    this.imageUrl, 

  );
  
}

谁能解释上面的代码这意味着什么以及发生了什么。第二个配方意味着构造函数?它是如何工作的以及它的用途是什么?“this”是什么意思,标签是字符串类型的两个变量,对吗?请解释

标签: flutter

解决方案


这里有一些解释:

class Recipe {
  String label;      // 1
  String imageUrl;   // 2
  
  Recipe(            // 3
    this.label,      // 4
    this.imageUrl,   // 5
  );
}
  • 1 & 2是类的成员Recipe,它们都是String属性。
  • 3是类的构造函数Recipe
  • 4 & 5是构造类的属性,this指类的属性。这是对以下代码的简化。

您可以编写此代码来创建这两个属性的副本,然后构建您的类(不推荐但有效):

class Recipe {
  String label;
  String imageUrl;
  
  Recipe(
    String label,
    String imageUrl, 
  ) : this.label = label, this.imageUrl = imageUrl;
}

推荐阅读