Objective-C 기본 사항


Objective-C 소개

Objective C 언어는 iOS 개발에 사용되는 객체지향 언어이므로 이미 객체지향 언어에 대한 지식이 있는 프로그래머에게는 매우 간단합니다.


인터페이스 및 구현

Objective에서 완성된 파일을 인터페이스 파일이라고 하며, 이러한 유형의 파일에 대한 정의를 구현 파일이라고 합니다.

간단한 인터페이스 파일 MyClass.h는 그림과 같습니다.

@interface MyClass:NSObject{ // 类变量声明}// 类属性声明// 类方法和声明@end

아래와 같이 MyClass.m 파일을 실행합니다.

@implementation MyClass// 类方法定义@end

객체 생성

아래와 같이 객체 생성을 완료합니다

MyClass  *objectName = [[MyClass alloc]init] ;

methods )

Objective C에서 선언된 메서드는 다음과 같습니다.

-(returnType)methodName:(typeName) variable1 :(typeName)variable2;

예는 아래와 같습니다.

-(void)calculateAreaForRectangleWithLength:(CGfloat)length 
andBreadth:(CGfloat)breadth;

andBreadth 문자열이 무엇인지 생각할 수 있지만 실제로는 선택적 문자열이 메서드를 읽고 이해하는 데 도움이 될 수 있습니다. 특히 메서드가 다음과 같은 경우에는 더욱 그렇습니다. 라고 불리는.

동일한 클래스에서 이 메소드를 호출하려면 다음 명령문을 사용합니다.

[self calculateAreaForRectangleWithLength:30 andBreadth:20];

위에서 언급했듯이 andBreath를 사용하면 호흡이 20이라는 것을 이해하는 데 도움이 됩니다. Self는 클래스의 메서드임을 지정하는 데 사용됩니다.

클래스 메서드

객체를 생성하지 않고도 클래스 메서드에 직접 액세스할 수 있습니다. 여기에는 연결된 변수나 개체가 없습니다. 예는 다음과 같습니다.

+(void)simpleClassMethod;

아래와 같이 클래스 이름(MyClass 클래스 이름으로 가정)을 사용하여 액세스할 수 있습니다.

[MyClass simpleClassMethod];
Instance 메서드

클래스의 객체를 생성하고 인스턴스 메서드에만 액세스할 수 있습니다. 메모리가 인스턴스 변수에 할당된 후. 인스턴스 메소드는 다음과 같습니다:

-(void)simpleInstanceMethod;

클래스의 객체를 생성한 후, 클래스에 접근할 수 있습니다. 아래와 같이

MyClass  *objectName = [[MyClass alloc]init] ;[objectName simpleInstanceMethod];

Objective C의 중요 데이터 유형

일련번호데이터 유형
1NSString string
2CGfloat 기본 부동 소수점 값 유형
3NSInteger 정수형
4BOOL 부울형

Print Log

NSLog는 명령문을 인쇄하는 데 사용되며, 이는 장치 로그와 디버그 버전 및 디버그 모드의 콘솔에 각각 인쇄됩니다.

예: NSlog(@"");


제어 구조

몇 가지 추가 용어를 제외하고 대부분의 제어 구조 C 및 C++와 동일합니다. 🎜#예: @property(비원자, 강력) NSString*myString

액세스 속성

#🎜 🎜#점 연산자를 사용하여 속성에 액세스할 수 있습니다. 이전 속성에 액세스하려면 다음 작업을 수행할 수 있습니다.

self.myString = @"Test";

아래와 같이 set 메서드를 사용할 수도 있습니다.

[self setMyString:@"Test"];

Categories

클래스는 기존 클래스에 메서드를 추가하는 데 사용됩니다. 이렇게 하면 실제 클래스를 정의하는 파일을 실행하지 않고도 클래스에 메서드를 추가할 수 있습니다. MyClass의 샘플 카테고리는 다음과 같습니다:

@interface MyClass(customAdditions)- (void)sampleCategoryMethod;@end@implementation MyClass(categoryAdditions)-(void)sampleCategoryMethod{   NSLog(@"Just a test category");}

Arrays

NSMutable 및 NSArray는 ObjectiveC에서 사용되는 배열 클래스이며, 전자는 변수 배열, 후자는 불변 배열입니다. 다음과 같습니다:

NSMutableArray *aMutableArray = [[NSMutableArray alloc]init];[anArray addObject:@"firstobject"];NSArray *aImmutableArray = [[NSArray alloc]initWithObjects:@"firstObject",nil];

Dictionary

NSMutableDictionary 및 NSDictionary는 Objective에서 사용되는 사전이며, 전자는 표시된 대로 변경 가능한 사전이고 후자는 변경 불가능한 사전입니다. 아래:# 🎜🎜#
NSMutableDictionary*aMutableDictionary = [[NSMutableArray alloc]init];[aMutableDictionary setObject:@"firstobject" forKey:@"aKey"];NSDictionary*aImmutableDictionary= [[NSDictionary alloc]initWithObjects:[NSArray arrayWithObjects:@"firstObject",nil] forKeys:[ NSArray arrayWithObjects:@"aKey"]];