OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 // Verifies behavior with a static getter, but no field and no setter. | 4 // Verifies behavior with a static getter, but no field and no setter. |
5 | 5 |
6 class Example { | 6 class Example { |
7 static int _var = 1; | 7 static int _var = 1; |
8 static int get nextVar() => _var++; | 8 static int get nextVar => _var++; |
9 Example() { | 9 Example() { |
10 { | 10 { |
11 bool flag_exception = false; | 11 bool flag_exception = false; |
12 try { | 12 try { |
13 nextVar = 1; // Equivalent to this.nextVar = 1. | 13 nextVar = 1; // Equivalent to this.nextVar = 1. |
14 } catch (var excpt) { | 14 } catch (var excpt) { |
15 flag_exception = true; | 15 flag_exception = true; |
16 } | 16 } |
17 Expect.isTrue(flag_exception); | 17 Expect.isTrue(flag_exception); |
18 } | 18 } |
(...skipping 12 matching lines...) Expand all Loading... |
31 this.nextVar = 0; /// 02: compile-time error | 31 this.nextVar = 0; /// 02: compile-time error |
32 } | 32 } |
33 } | 33 } |
34 | 34 |
35 class Example1 { | 35 class Example1 { |
36 Example1(int i) { } | 36 Example1(int i) { } |
37 } | 37 } |
38 | 38 |
39 class Example2 extends Example1 { | 39 class Example2 extends Example1 { |
40 static int _var = 1; | 40 static int _var = 1; |
41 static int get nextVar() => _var++; | 41 static int get nextVar => _var++; |
42 Example2() : super(nextVar) { } // No 'this' in scope. | 42 Example2() : super(nextVar) { } // No 'this' in scope. |
43 } | 43 } |
44 | 44 |
45 void main() { | 45 void main() { |
46 Example x = new Example(); | 46 Example x = new Example(); |
47 Example.test(); | 47 Example.test(); |
48 Example2 x2 = new Example2(); | 48 Example2 x2 = new Example2(); |
49 } | 49 } |
OLD | NEW |