클래스 생성
[클래스 파일 생성]
프로젝트를 먼저 생성하고,
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 |