본문 바로가기

Objective-C 기초

클래스 작성

반응형

클래스 생성


[클래스 파일 생성]

프로젝트를 먼저 생성하고,


NewFile -> Cocoa Class 선택


Class 이름 설정. / 상속받을 클래스(default : NSObject) / 클래스 작성 언어 선택


(.h) 파일과 (.m)파일이 생성됨.


클래스 선언부 : 헤더 파일(.h)

클래스 구현부 : 구현 파일(.m)

일반적으로 헤더파일은 공개가 되고, 구현 파일은 공개되지 않는 경우도 많음.

선언부 : 클래스의 행위를 알리는 역할 --> 그러므로 공개가 돼야겠지?


[클래스 선언 형식]

@interface 클래스이름 : 부모클래스{

멤버 변수 (멤버변수는 선언부 혹은 구현부 중 한군데에 선언)

}

-(반환형)인스턴스메소드이름:(자료형)파라미터 파라미터레이블:(자료형)파라미터;

+(반환형)클래스메소드이름:(자료형)파라미터 파라미터레이블:(자료형)파라미터;

@end

메소드 선언 : 클래스 헤더에 선언 (생략 가능 - 외부에서 이 메소드 사용 불가.)

멤버변수는 선언부 혹은 구현부 중 한곳에 적으면 됨. (공개하고싶다면 헤더에, 양쪽다 적으면 에러)


[클래스 구현 형식]

@implementation 클래스이름{

멤버 변수 (멤버변수는 선언부 혹은 구현부 중 한군데에 선언)

}

-(반환형)인스턴스메소드이름:(자료형)파라미터 파라미터레이블:(자료형)파라미터{

메소드 내용.

}

+(반환형)클래스메소드이름:(자료형)파라미터 파라미터레이블:(자료형)파라미터{

메소드 내용.

}

@end

메소드 구현 : 클래스 구현부에 작성


인스턴스 메소드와 클래스 메소드

getter와 setteer

self 포인터


[예시]

* 클래스 선언부 (.h 파일)


* 클래스 구현부 (.m 파일)


* 메인코드 (.m)


* 실행 결과


반응형

'Objective-C 기초' 카테고리의 다른 글

상속  (0) 2019.02.09
인스턴스 메소드 & 클래스 메소드  (0) 2019.02.09
nil 포인터  (0) 2019.02.08
메소드  (0) 2019.02.01
클래스와 객체  (0) 2019.01.31