일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- swiftUI
- 스위프트
- ARC
- 머신러닝
- Deep learning
- 알고리즘
- Algorithm
- 독서
- 책 추천
- Xcode
- 책
- iOS SwiftUI
- 딥러닝
- 책 후기
- objective-c
- SWIFT
- ios
- swift5
- 문자열
- Animation
- wwdc
- rxswift
- stanford SwiftUI
- objc
- leetcode
- 스위프트UI
- 애니메이션
- RX
- ReactiveX
- string
Archives
- Today
- Total
THIS IS ELLIE
오브젝티브씨 isKindOfClass 본문
isKindOfClass는 해당 클래스의 인스턴스인지 또는 해당 클래스에서 상속된 클래스 인스턴스인지 확인할 때 사용합니다.
YES, NO인 부울 값을 리턴해줍니다.
아래와 같이 선언되어 있습니다.
- (BOOL)isKindOfClass:(Class)aClass;
파라미터 aClass는 검사할 Objective-C 클래스를 나타내는 클래스 오브젝트입니다.
aClass 해당 클래스이거나 상속받은 클래스 인스턴스면 YES를 리턴하고, 아니면 NO를 리턴합니다.
예를 들어서
아래의 코드는 YES를 리턴합니다. Foundation에서 NSArchiver클래스는 NSCoder을 상속받기 때문입니다.
NSMutableData *myData = [NSMutableData dataWithCapacity:30];
id anArchiver = [[NSArchiver alloc] initForWritingWithMutableData:myData];
if ( [anArchiver isKindOfClass:[NSCoder class]] )
...
하지만 아래와 같이 클래스 클러스트로 표시되는 객체에서 이 메소드를 사용하려면 주의해야 합니다.
// DO NOT DO THIS!
if ([myArray isKindOfClass:[NSMutableArray class]])
{
// Modify the object
}
클래스 클러스터의 특성으로 인해 예상한 유형의 오브젝트가 아닐 수 있기 때문입니다.
스위프트에서는 is로 클래스를 확인할 수 있습니다.
if touch.view is UIPickerView {
// touch.view is of type UIPickerView
}
반응형
'개발 > Objective-C' 카테고리의 다른 글
문자열 포맷 지정 (0) | 2020.04.22 |
---|---|
Objective-C 프로퍼티 속성 (0) | 2020.03.26 |
KVO (Key Value Observing) (0) | 2020.02.24 |
Objective-C id 타입 (0) | 2020.02.20 |
조건문와 반복문 (0) | 2020.02.12 |