3.1 add*(增加)
3.1.1
static
IMP addMethod(Class cls, SEL name, IMP imp,
const
char
*types,
BOOL
replace);
3.1.2
BOOL
class_addMethod(Class cls, SEL name, IMP imp,
const
char
*types);
3.1.3
BOOL
class_addIvar(Class cls,
const
char
*name,
size_t
size,uint8_t alignment,
const
char
*type);
3.1.4
static
BOOL
_class_addProperty(Class cls,
const
char
*name,
const
objc_property_attribute_t *attrs, unsigned
int
count,
BOOL
replace);
3.2 replace*(修改)
3.2.1 IMP class_replaceMethod(Class cls, SEL name, IMP imp,
const
char
*types);
3.2.2
void
class_replaceProperty(Class cls,
const
char
*name,
const
objc_property_attribute_t *attrs, unsigned
int
n);
3.3 get*(获取)
3.3.1
static
Class getClass(
const
char
*name);
3.3.2
static
ivar_t *getIvar(Class cls,
const
char
*name);
3.3.3 Method class_getInstanceMethod(Class cls, SEL sel);
3.3.4
static
Method _class_getMethod(Class cls, SEL sel);;
3.3.5
static
Protocol *getProtocol(
const
char
*name);
3.4 set*(设置)
3.4.1 objc_class::setInitialized();
3.4.2
static
Class setSuperclass(Class cls, Class newSuper);
3.5 其他还有类似于
void
*objc_destructInstance(id obj);