2 * Copyright (C) 2009 The Android Open Source Project
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 public static void main(String args
[]) {
19 Derived derived
= new Derived();
21 derived
.declaredInBase();
22 derived
.notDeclaredInBase();
23 derived
.wasOverridden();
25 derived
.callOverrideWithPublic();
26 derived
.callOverrideProtectedWithPublic();
27 derived
.callOverridePublicWithProtected();
28 derived
.callOverridePublicWithPrivate();
29 derived
.callOverridePrivateWithPublic();
30 derived
.overridePrivateWithPublic();
31 derived
.callOverrideVirtualWithStatic();
32 derived
.overrideVirtualWithStatic();
33 derived
.callOverrideStaticWithVirtual();
34 derived
.overrideStaticWithVirtual();
37 ((Base
)derived
).overrideVirtualWithStatic();
38 } catch (NoSuchMethodError nsme
) {
39 /* NSME is subclass of ICCE, so check it explicitly */
40 System
.err
.println("Got NSME - ovws");
41 } catch (IncompatibleClassChangeError icce
) {
42 System
.out
.println("Got expected exception - ovws");
46 ((Base
)derived
).overrideStaticWithVirtual();
47 } catch (NoSuchMethodError nsme
) {
48 System
.err
.println("Got NSME - ovws");
49 } catch (IncompatibleClassChangeError icce
) {
50 System
.out
.println("Got expected exception - oswv");