Keywords are treated differently. Like other programming languages, keywords are words you can’t use as identifiers. Actually, you can use a few keywords as identifiers but you shouldn’t if you want to follow the best practices.
These identifiers are valid identifiers. But you can’t use them as the prefix for imports, class name or type names. Following are these identifiers :
-,-,-,-,- abstract, dynamic, implements, as, import static, interface, export, library, external mixin, factory, Function, operator, typedef covariant, get, part, set, deferred [/table]
These are valid identifiers but have meaning only in specific places.
-,-,- async, show, on hide, sync [/table]
You can’t use any reserved words as identifier. These are espicifically designed for the dart language.
-,-,-,-,- assert, enum, else, extends, in super, is, switch, this, case break, true, false, throw, new final, class, null, try, const finally, var, continue, for, default rethrow, while, do, if, return with, catch, [/table]
Other than these keywords, two more keywords were introduced in Dart 1.0 :
-,- await, yield [/table]
You can’t use these keywords as an identifier in any async, async* or sync* function.