15d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao/*
25d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * Copyright (C) 2009 The Android Open Source Project
35d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao *
45d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * Licensed under the Apache License, Version 2.0 (the "License");
55d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * you may not use this file except in compliance with the License.
65d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * You may obtain a copy of the License at
75d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao *
85d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao *      http://www.apache.org/licenses/LICENSE-2.0
95d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao *
105d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * Unless required by applicable law or agreed to in writing, software
115d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * distributed under the License is distributed on an "AS IS" BASIS,
125d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
135d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * See the License for the specific language governing permissions and
145d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao * limitations under the License.
155d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao */
165d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao
175d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhaopublic class Base {
185d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    public void declaredInBase() {
195d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        System.out.println("declaredInBase: Base");
205d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
215d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao
225d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    public void overridden() {
235d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        System.out.println("overridden: Base");
245d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
255d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao
265d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    /* src2: removed */
275d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    //public void wasOverridden() {
285d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    //    System.out.println("wasOverridden: Base");
295d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    //}
305d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao
315d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    public void callOverrideWithPublic() {
325d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        overrideWithPublic();
335d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
345d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    public void overrideWithPublic() {
355d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        System.out.println("overrideWithPublic: Base");
365d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
375d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao
385d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    public void callOverridePublicWithProtected() {
395d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        overridePublicWithProtected();
405d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
415d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    /* src2: public */
425d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    public void overridePublicWithProtected() {
435d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        System.out.println("overridePublicWithProtected: Base");
445d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
455d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao
465d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    public void callOverrideProtectedWithPublic() {
475d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        overrideProtectedWithPublic();
485d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
495d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    protected void overrideProtectedWithPublic() {
505d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        System.out.println("overrideProtectedWithPublic: Base");
515d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
525d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao
535d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    public void callOverridePublicWithPrivate() {
545d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        overridePublicWithPrivate();
555d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
565d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    /* src2: public */
575d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    public void overridePublicWithPrivate() {
585d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        System.out.println("overridePublicWithPrivate: Base");
595d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
605d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao
615d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    public void callOverridePrivateWithPublic() {
625d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        overridePrivateWithPublic();
635d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
645d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    private void overridePrivateWithPublic() {
655d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        System.out.println("overridePrivateWithPublic: Base");
665d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
675d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao
685d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    public void callOverrideVirtualWithStatic() {
695d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        overrideVirtualWithStatic();
705d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
715d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    /* src2: non-static */
725d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    public void overrideVirtualWithStatic() {
735d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        System.out.println("overrideVirtualWithStatic: Base");
745d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
755d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao
765d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    public void callOverrideStaticWithVirtual() {
775d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        overrideStaticWithVirtual();
785d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
795d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    public static void overrideStaticWithVirtual() {
805d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao        System.out.println("overrideStaticWithVirtual: Base");
815d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao    }
825d1ac920fdaef5d4ec8f66bb734488cd9660b024jeffhao}
83