Dart by Example: Final

Final objects are immutable

2. main() {

4. // final variables are single-assignment:
5. final foo = "hello";

7. try {
8. foo = 'goodbye'; // runtime error; already assigned
9. } catch(e) {
10. print('error');
11. }

13. var pos = new Position(4);

15. try {
16. pos.x = 100; // runtime error
17. } catch(e) {
18. print('error');
19. }
20. }

22. class Position {
23. final int x;
24. final int y;
25. Position(this.x) : y = 0;
26. }
1. $ dart final.dart
2. error
3. error

by @jryanio | source | license