Notice
Recent Posts
Recent Comments
Link
투케이2K
4. (Objective-C/objc) property 프로퍼티 사용해 변수 선언 및 get , set 데이터 지정 및 호출 실시 본문
Objective-C
4. (Objective-C/objc) property 프로퍼티 사용해 변수 선언 및 get , set 데이터 지정 및 호출 실시
투케이2K 2022. 2. 18. 12:43[개발 환경 설정]
개발 툴 : XCODE
개발 언어 : OBJECTIVE-C
[testMain 함수]
// MARK: - [헤더 파일에 정의 없이 : void 메소드 구현]
- (void)testMain {
printf("\n");
printf("=============================== \n");
printf("[ViewController >> testMain() :: 테스트 메소드 수행] \n");
printf("=============================== \n");
printf("\n");
// MARK: [요약 설명]
/*
// -----------------------------------------
1. 사전 S_FinalData 클래스 import 필요 : #import "S_FinalData.h"
2. set 지정 (ex) : S_FinalData.age = 10
3. get 호출 (ex) : S_FinalData.age
// -----------------------------------------
*/
printf("\n");
printf("=============================== \n");
printf("[이름 :: %s] \n", [S_FinalData.name UTF8String]);
printf("[나이 :: %d] \n", S_FinalData.age);
printf("[성별 :: %c] \n", S_FinalData.sex);
printf("[개발자 :: %s] \n", S_FinalData.developer ? "true" : "false");
printf("[몸무게 :: %f] \n", S_FinalData.weight);
printf("=============================== \n");
printf("\n");
}
[S_FinalData.h]
#import <Foundation/Foundation.h>
// MARK: - [클래스 설명]
/*
// -----------------------------------------
1. S_FinalData (선언부)
2. 변수 관리 클래스
// -----------------------------------------
*/
// -----------------------------------------
@interface S_FinalData : NSObject
// -----------------------------------------
// -----------------------------------------
/*
MARK: [요약 설명]
1. property (프로퍼티 정의)
- 클래스의 속성이나 설정을 지정하는 것입니다
- 변수 , 메소드 등을 선언해서 사용할 수 있습니다
- 프로퍼티는 실제 사용할때는 클래스에서 getter , setter 의미로 사용하면 됩니다
2. class
- 사용자 클래스 선언을 위해서 사용합니다
3. nonatomic
- 멀티 스레드 환경에는 작동 안하게 설정
4. assign
- get , set 사용
*/
// -----------------------------------------
// -----------------------------------------
// [프로퍼티 정의]
@property (class, nonatomic, assign) NSString * name;
@property (class, nonatomic, assign) int age;
@property (class, nonatomic, assign) char sex;
@property (class, nonatomic, assign) bool developer;
@property (class, nonatomic, assign) double weight;
// -----------------------------------------
// -----------------------------------------
@end
// -----------------------------------------
[S_FinalData.m]
#import <Foundation/Foundation.h>
// MARK: [헤더 파일 import]
#import "S_FinalData.h"
@implementation S_FinalData
// MARK: - [클래스 설명]
/*
// -----------------------------------------
1. S_FinalData (구현부)
2. 헤더 파일에 정의한 @property getter , setter 구현
// -----------------------------------------
*/
// -----------------------------------------
// MARK: [프로퍼티 초기값 지정 : static 으로 선언해 데이터 보호 및 get , set 으로 변수에 접근]
static NSString * _name = @"투케이";
static int _age = 29;
static char _sex = 'M';
static bool _developer = true;
static double _weight = 62.5;
// -----------------------------------------
// -----------------------------------------
// MARK: [getter 지정]
+ (NSString *) name { return _name; }
+ (int) age { return _age; }
+ (char) sex { return _sex; }
+ (bool) developer { return _developer; }
+ (double) weight { return _weight; }
// -----------------------------------------
// -----------------------------------------
// MARK: [setter 지정]
+ (void)setName:(NSString *) newData { _name = newData; }
+ (void)setAge:(int) newData { _age = newData; }
+ (void)setSex:(char) newData { _sex = newData; }
+ (void)setDeveloper:(bool) newData { _developer = newData; }
+ (void)setWeight:(double) newData { _weight = newData; }
// -----------------------------------------
@end
[결과 출력]
반응형
'Objective-C' 카테고리의 다른 글
6. (Objective-C/objc) for , while true 무한 루프 반복문을 사용해서 카운트 수행 실시 (0) | 2022.02.18 |
---|---|
5. (Objective-C/objc) NSMutableArray 가변 배열 사용해 데이터 삽입 , 변경 , 삭제 수행 실시 (0) | 2022.02.18 |
3. (Objective-C/objc) 기본 void , return 함수 (메소드) 구현 실시 (0) | 2022.02.18 |
2. (Objective-C/objc) Xcode Objective-C 프로젝트 기본 구조 설명 및 기본 코드 첨부 (0) | 2022.02.15 |
1. (Objective-C/objc) Xcode 사용해서 프로젝트 생성 방법 설명 (0) | 2022.02.15 |
Comments