question: public static BinaryFieldAccessor create ( Field field , int id ) { BinaryWriteMode mode = BinaryUtils . mode ( field . getType ( ) ) ; switch ( mode ) { case P_BYTE : return new BytePrimitiveAccessor ( field , id ) ; case P_BOOLEAN : return new BooleanPrimitiveAccessor ( field , id ) ; case P_SHORT : return new ShortPrimitiveAccessor ( field , id ) ; case P_CHAR : return new CharPrimitiveAccessor ( field , id ) ; case P_INT : return new IntPrimitiveAccessor ( field , id ) ; case P_LONG : return new LongPrimitiveAccessor ( field , id ) ; case P_FLOAT : return new FloatPrimitiveAccessor ( field , id ) ; case P_DOUBLE : return new DoublePrimitiveAccessor ( field , id ) ; case BYTE : case BOOLEAN : case SHORT : case CHAR : case INT : case LONG : case FLOAT : case DOUBLE : case DECIMAL : case STRING : case UUID : case DATE : case TIMESTAMP : case BYTE_ARR : case SHORT_ARR : case INT_ARR : case LONG_ARR : case FLOAT_ARR : case DOUBLE_ARR : case CHAR_ARR : case BOOLEAN_ARR : case DECIMAL_ARR : case STRING_ARR : case UUID_ARR : case DATE_ARR : case TIMESTAMP_ARR : case ENUM_ARR : case OBJECT_ARR : case BINARY_OBJ : case BINARY : return new DefaultFinalClassAccessor ( field , id , mode , false ) ; default : return new DefaultFinalClassAccessor ( field , id , mode , ! U . isFinal ( field . getType ( ) ) ) ; } }
target:  Create accessor for the field.