Keywords in dart

Introduction :

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.

Built-in identifiers :

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]

contextual keywords :

These are valid identifiers but have meaning only in specific places.


-,-,- async, show, on hide, sync [/table]

Reserved words :

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.