art虚拟机--方法成员类的关系

一、三个对象的主要成员函数

art虚拟机--方法成员类的关系

1、object类,是抽象于art::mirror空间中。保证其结构的数据内存。包括类中所有的成员,field也

  是offset的方式,存在于该内存空间中

2、artField关键的成员,declaring_class_表示是当前属于那个类。access_flags_表示当前的成员是public/private等

      field_dex_idx_是在dex文件中的索引。offset_ 是在class结构体中的偏移

     SetObj/GetObj最终是让mirror::Object 来调用的

     art虚拟机--方法成员类的关系

3、artMehtod 前面几个跟field类似

   method_idx_ 虚函数的索引,vtable是用于实现interface的,与继承重载有关。

   PtrSizedFields 根据该方法的不同而不同。native方法,该结构存放native函数的指针等等

   

  Invoke方法的执行

1、

 art虚拟机--方法成员类的关系

2、

art虚拟机--方法成员类的关系 

 

4、成员,方法,类的抽象就这么多了。当然,这里只说的是一个非常简单的大纲模型。

具体的细节,用的着的需要细看。