10

興味本位で Androidのソースを調べてみました。私が見つけたのは、それContextが抽象メソッドを持つ抽象クラスであるということです:

public abstract Context getApplicationContext();

メソッドの実装につながったContextWrapper.java拡張:Context.javagetApplicationContext()

 @Override
    public Context getApplicationContext() {
        return mBase.getApplicationContext();
    }

ただし、のコンストラクターで初期化されるmBase型のオブジェクトへの参照です。ContextContextWrapper

public ContextWrapper(Context base) {
    mBase = base;
}

このmBase参照はabstractクラスを参照していますか?getApplicationContext()から呼び出すときに実行されるコードがどこにあるのかわかりませんActivity

4

1 に答える 1