[OC 빗질] NSObject

3026 단어

NSObject


NSObject는 Foundation 프레임워크의 기초 클래스로 OC에서 자주 사용하는 클래스는 대부분이 그 클래스를 계승하고 alloc, init 등 방법을 제공하여 우리가 사용할 수 있도록 제공한다.
  • isEqual: 두 바늘 변수가 같은 대상을 가리키는지 판단하는 것은 직접'=='로 비교하는 효과와 같다.
  • isMember OfClass: 바늘 변수가 가리키는 대상이 하나의 클래스에 속하는지 판단하고 특정한 클래스에 속하는지 판단하는 데 사용한다. 예를 들어
  • UIView *view = [[UIView alloc]init];
    BOOL isBelongToView = [view isMemberOfClass:[UIView class]];
    BOOL isBelongToObject = [view isMemberOfClass:[NSObject class]];
    NSLog(@"%d   %d",isBelongToView,isBelongToObject);
    

    결과 출력:
     1   0
    
  • isKind OfClass: 바늘 변수가 가리키는 대상이 하나의 클래스의 하위 클래스인지 판단한다. 예를 들어
  • UIView *view = [[UIView alloc]init];
    BOOL isBelongToView = [view isKindOfClass:[UIView class]];
    BOOL isBelongToObject = [view isKindOfClass:[NSObject class]];
    NSLog(@"%d   %d",isBelongToView,isBelongToObject);
    

    출력 결과는 다음과 같습니다.
     1   1
    
  • respondsToSelector: 한 종류에 어떤 방법이 있는지 판단한다.m에서 실현되면 YES로 돌아가며 사유 여부와는 무관하다.
  • performSelector 방법은 다음과 같은 방법을 포함한다.
  • // , 0、1、2 
    - (id)performSelector:(SEL)aSelector;
    - (id)performSelector:(SEL)aSelector withObject:(id)object;
    - (id)performSelector:(SEL)aSelector withObject:(id)object1 withObject:(id)object2;
    
    // ( , 。)
    - (void)performSelector:(SEL)aSelector withObject:(nullable id)anArgument afterDelay:(NSTimeInterval)delay inModes:(NSArray *)modes;
    - (void)performSelector:(SEL)aSelector withObject:(nullable id)anArgument afterDelay:(NSTimeInterval)delay;
    // , 
    + (void)cancelPreviousPerformRequestsWithTarget:(id)aTarget selector:(SEL)aSelector object:(nullable id)anArgument;
    + (void)cancelPreviousPerformRequestsWithTarget:(id)aTarget;
    
    // , wait YES: , aSelector 。 , aSelector 。
    - (void)performSelectorOnMainThread:(SEL)aSelector withObject:(nullable id)arg waitUntilDone:(BOOL)wait modes:(nullable NSArray *)array;
    - (void)performSelectorOnMainThread:(SEL)aSelector withObject:(nullable id)arg waitUntilDone:(BOOL)wait;
    
    // 
    - (void)performSelector:(SEL)aSelector onThread:(NSThread *)thr withObject:(nullable id)arg waitUntilDone:(BOOL)wait modes:(nullable NSArray *)array NS_AVAILABLE(10_5, 2_0);
    - (void)performSelector:(SEL)aSelector onThread:(NSThread *)thr withObject:(nullable id)arg waitUntilDone:(BOOL)wait NS_AVAILABLE(10_5, 2_0);
    
    // 
    - (void)performSelectorInBackground:(SEL)aSelector withObject:(nullable id)arg NS_AVAILABLE(10_5, 2_0);
    
    // order performSelector ( )
    - (void)performSelector:(SEL)aSelector target:(id)target argument:(nullable id)arg order:(NSUInteger)order modes:(NSArray *)modes;
    // performSelector 
    - (void)cancelPerformSelector:(SEL)aSelector target:(id)target argument:(nullable id)arg;
    - (void)cancelPerformSelectorsWithTarget:(id)target;
    

    좋은 웹페이지 즐겨찾기