public void scan(Class<?> clazz,Class<?> endClazz,boolean includeTransient){
  Class<?> currentClazz=clazz;
  while (currentClazz != endClazz) {
    for (    Field field : currentClazz.getDeclaredFields()) {
      if (Modifier.isStatic(field.getModifiers())) {
        continue;
      }
      if (!includeTransient && Modifier.isTransient(field.getModifiers())) {
        continue;
      }
      long offset=calc.getOffset(field);
      scanField(field,offset);
    }
    currentClazz=currentClazz.getSuperclass();
  }
}

public void scan ( Class < ? > clazz , Class < ? > endClazz , boolean includeTransient ) { Class < ? > currentClazz = clazz ; while ( currentClazz != endClazz ) { for ( Field field : currentClazz . getDeclaredFields ( ) ) { if ( Modifier . isStatic ( field . getModifiers ( ) ) ) { continue ; } if ( ! includeTransient && Modifier . isTransient ( field . getModifiers ( ) ) ) { continue ; } long offset = calc . getOffset ( field ) ; scanField ( field , offset ) ; } currentClazz = currentClazz . getSuperclass ( ) ; } }
scans the fields in a class hierarchy .
