activity 里面的this 怎么理解?
activity 里面的this 怎么理解?
比如this.getResources()方法;
实际上是//android.content.ContextWrapper.getResources()的方法。
debug的时候发现this 的value 是ActivityThread 。
this应该是activity的对象指针,但是又可以传递给Context。。。
谁知道怎么理解啊
------------------------------------------
附:
activity源代码的定义:
public class Activity extends ContextThemeWrapper
implements LayoutInflater.Factory,
Window.Callback, KeyEvent.Callback,
OnCreateContextMenuListener, ComponentCallbacks {
ContextWrapper源代码的getResources()方法:
ContextWrapper.java
... ...
Context mBase;
@Override
public Resources getResources()
{
return mBase.getResources();
}
在附加Context源代码中的getResources()方法实现:
Context.java
/** Return a Resources instance for your application's package. */
public abstract Resources getResources();
奇怪了,上面mBase.getResources();调用的竟然是一个抽象方法,这怎么可以?