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 // Dart test program for testing Interfaces. | 4 // Dart test program for testing Interfaces. |
5 | 5 |
6 abstract class Ai { | 6 abstract class Ai { |
7 int foo(); | 7 int foo(); |
8 } | 8 } |
9 | 9 |
10 abstract class Bi implements Ai { | 10 abstract class Bi implements Ai { |
11 factory Bi() = InterfaceTest; | 11 factory Bi() = InterfaceTest; |
12 } | 12 } |
13 | 13 |
14 abstract class Simple implements Ai { } | 14 abstract class Simple implements Ai {} |
15 | 15 |
16 abstract class Aai { } | 16 abstract class Aai {} |
17 | 17 |
18 abstract class Abi { } | 18 abstract class Abi {} |
19 | 19 |
20 abstract class Bar { } | 20 abstract class Bar {} |
21 | 21 |
22 abstract class Foo implements Bar { } | 22 abstract class Foo implements Bar {} |
23 | 23 |
24 abstract class Baz implements Bar, Foo { } | 24 abstract class Baz implements Bar, Foo {} |
25 | 25 |
26 class InterfaceTest implements Ai, Aai, Abi, Baz, Bi { | 26 class InterfaceTest implements Ai, Aai, Abi, Baz, Bi { |
27 var f; | 27 var f; |
28 | 28 |
29 InterfaceTest() {} | 29 InterfaceTest() {} |
30 int foo() { return 1; } | 30 int foo() { |
| 31 return 1; |
| 32 } |
31 | 33 |
32 // intentionally unimplemented methods | 34 // intentionally unimplemented methods |
33 beta(); // Abstract. | 35 beta(); // Abstract. |
34 String beta1(); // Abstract. | 36 String beta1(); // Abstract. |
35 String beta2(double d); // Abstract. | 37 String beta2(double d); // Abstract. |
36 } | 38 } |
37 | 39 |
38 main() { | 40 main() { |
39 // instantiate an abstract class | 41 // instantiate an abstract class |
40 var o = new Bi(); //# 00: static type warning | 42 var o = new Bi(); //# 00: static type warning |
41 } | 43 } |
OLD | NEW |