| 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 |