클래스 구성

2개의 파일로 나뉨

SomeClass.h : 클래스의 인터페이스 정의, 공개 메소드, 인스턴스 변수
SomeClass.m : 실제적 구현 및 Private 메소드

 

클래스 인터페이스 구현

아래코드는 비디오클립 헤더 파일인 Clip.h

#import <foundation/Foundation.h>  //필요한 파일을 불러옴

@interface clip : NSObject  //NSObject의 하위클래스인 clip 클래스 정의를 시작
// 아래는 인스턴스 변수 정의
    int PlayCount;
    NSString *vid;
    NSString *title;
    NSString *orginalURL;
}

// 아래는 메소드 정의
+ clip;  // +는 클래스 메소드임을 뜻함
- (BOOL) isNewClip;  // -는 인스턴스 메소드를 뜻함
@end  // 클래스 정의가 끝났음

+는 NSString의 string처럼 객체를 생성시킬 때 사용하는 클래스 메소드 (팩토리 함수)

-는 인스턴스 메소드르 isNewClip은 사용자가 보지 않은 클립인지를 BOOL형 값으로 반환

 

클래스 구현

다음 코드는 Clip.m

@implementation Clip

- (BOOL) isNewClip
{
    return YES;
}

@end

@implementation과 @end 사이에 클래스의 실제적 하는 일을 구현

@interface에 구현하지 않은 메소드를 추가하면, 그 메소드는 Private이 되어 해당 클래스 내에서만 사용 가능

+ Recent posts