I'd say you've got yourself a bug.  Very nice work.  This code, run first 
under java 6, then under Android, confirms it for me:


package net.callmeike.sandbox.p1;

public class BaseClass {
    public void run() { callFoo(); }

    void foo() { System.out.println("P1 foo: " + this); }

    private void callFoo() { foo(); }
}


package net.callmeike.sandbox.p2;
import net.callmeike.sandbox.p1.BaseClass;

public class SubClass extends BaseClass {
    void foo() { System.out.println("P2 foo: " + this); }
}


/* Run on Android */
package net.callmeike.android.sandbox;

import android.os.Bundle;
import android.app.Activity;
import net.callmeike.sandbox.p2.SubClass;

public class SandboxActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        SubClass obj = new SubClass();
        System.out.println("onCreate with: " + obj);
        obj.run();
    }
}

LOGCAT OUTPUT
07-07 14:46:57.141: I/System.out(1029): onCreate with: 
net.callmeike.sandbox.p2.SubClass@411ed330
07-07 14:46:57.141: I/System.out(1029): P2 foo: 
net.callmeike.sandbox.p2.SubClass@411ed330
07-07 14:46:57.500: D/gralloc_goldfish(1029): Emulator without GPU 
emulation detected.


/* Run under Java 6 */
package net.callmeike.sandbox;
import net.callmeike.sandbox.p2.SubClass;

public class Bug {
    public static void main(String[] args) {
        SubClass obj = new SubClass();
        System.out.println("main with: " + obj);
        obj.run();
    }
}

CONSOLE OUTPUT
main with: net.callmeike.sandbox.p2.SubClass@17dfafd1
P1 foo: net.callmeike.sandbox.p2.SubClass@17dfafd1

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to