dart-sdk/tests/language_2/override_method_with_field_test.dart
pq dd069fc800 Migrate test block 142 to Dart 2.0.
Bug:
Change-Id: I358bcf6d7d3d4c78b572ed4bbcb05696c47268cc
Reviewed-on: https://dart-review.googlesource.com/10640
Reviewed-by: Ben Konyi <bkonyi@google.com>
2017-10-03 20:00:27 +00:00

32 lines
781 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.
import "package:expect/expect.dart";
// Test overriding a method with a field.
class Super {
Super() : super();
instanceMethod() => 42;
}
class Sub extends Super {
Sub() : super();
var instanceMethod = 87; // //# 01: compile-time error
superInstanceMethod() => super.instanceMethod();
}
main() {
var s = new Sub();
Super sup = s;
Sub sub = s;
print(s.instanceMethod);
Expect.equals(42, s.superInstanceMethod());
Expect.equals(42, sup.superInstanceMethod()); //# 02: compile-time error
Expect.equals(42, sub.superInstanceMethod());
}