Const
ตัวแปรที่มีกำหนดค่าได้ครั้งเดียว และต้องมีการกำหนดค่าเริ่มต้นให้เสมอเมื่อประกาศ และไม่สามารถแก้ไขค่าได้
ตัวอย่างเช่น
const Pi = 3.14;
Static
ใช้แชร์ตัวแปรระหว่างคลาสเดียวกัน
ตัวอย่างเช่น
class Student {
String name;
int age;
static List<String> regulation; Student(this.name, this.age);
}
Final
ตัวแปรที่มีกำหนดค่าได้ครั้งเดียว และต้องมีการกำหนดค่าเริ่มต้นให้เสมอ และเมื่อกำหนดค่าให้แล้วจะไม่สามารถแก้ไขค่าได้ กรณีเป็น Reference/Object Data Types สามารถแก้ไขค่าได้ แต่ไม่สามารถกำหนดค่าให้ตัวแปรใหม่ได้
ตัวอย่างเช่น
// Primitive Data Types
final String name = "NottDev";
name = "NottDev Edit"; // can't set// Reference/Object Data Types
final List<String> fruits = ['apple', 'orange', 'banana'];
fruits.removeLast(); // ['apple', 'orange'];
fruits = []; // can't set
primitive Data Types : int, double, boolean and string
Reference/Object Data Types: List, Map, Object