Files
sdk/tests/language/interface_test.dart
T
hausner@google.com b3a2c41d02 Revert change 11558
I learnt that instantiating an abstract class is a runtime error, not a compile time error.

TBR=regis
Review URL: https://chromiumcodereview.appspot.com//10894048

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@11567 260f80e4-7a28-3924-810f-c04153c831b5
2012-08-29 22:49:52 +00:00

43 lines
866 B
Dart

// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// Dart test program for testing Interfaces.
interface Ai {
int foo();
}
interface Bi extends Ai default InterfaceTest {
Bi();
}
interface Simple extends Ai { }
interface Aai { }
interface Abi { }
interface Bar { }
interface Foo extends Bar { }
interface Baz extends Bar, Foo { }
class InterfaceTest implements Ai, Aai, Abi, Baz, Bi {
var f;
InterfaceTest() {}
int foo() { return 1; }
// intentionally unimplemented methods
abstract beta();
abstract String beta1();
abstract String beta2(double d);
}
main() {
// instantiate an abstract class
var o = new Bi(); /// static type warning
Expect.equals(1, o.foo());
}