본문 바로가기

Object-C

(10)
<MAC OSX and Cocoa Touch> Class 11th~18th.
<MAC OSX and Cocoa Touch> Class 1st~10th
코코아 어플리케이션 데모 테스트 #import @interface Converter : NSObject { float sourceCurrencyAmount; float rate; // sourceCurrencyAmount, rate 라는 object를 선언해주었습니다. 창 상에서는 Exchange rate per 1$, Dollars to Convert를 뜻하게 됩니다. } @property(readwrite) float sourceCurrencyAmount, rate; - (float)convertCurrency; // return되는 반환값(즉 결과값)을 object로 선언해주었습니다. 창에서는 Amount in other Corrency를 뜻하게 됩니다. @end #import "Converter.h" @implementation..
9장 타형성, 동적 타이핑, 동적 바인딩 1. 다형성 : 다른 클래스의 객체들이 동일한 메서드 이름을 사용할 수 있도록 해준다. 2. 동적 타이핑 : 객체가 속한 클래스를 알아내는 단계를 프로그램이 실행될때로 미룬다. 3. 동적 바인딩 : 객체에 호출되는 실제 메서드를 알아내는 시기를 프로그램 실행중으로 미룬다.
8장 상속 #import @interface ClassA : NSObject { int x; } - (void) initVar; @end @implementation ClassA - (void) initVar { x=100; } @end @interface ClassB : ClassA // ClassB는 ClassA를 상속한다. - (void) printVar; @end @implementation ClassB - (void) printVar { NSLog(@"x = %i", x); } @end int main(int argc, char *argv[]) { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; ClassB *b = [[ClassB alloc] i..
7장 클래스에 대해서 Interface 부분은 *.h 파일로 만들고 Implementation 부분 + program 부분은 main 소스파일(*.m)로 만들면 된다. 메인 파일 만들때 #import "파일이름.h" 추가하는 것은 잊지 말아야 한다. 또한 implementation, program 파일은 따로따로 만들어 주는 것이 정석이다. Object-2.0 부터는 세터와 게터 메서드(둘다 합쳐서 접근자 메서드라고 한다.)를 자동으로 생성할 수 있다. 1. 인터페이스 부분에서 @property 지시어를 사용하여 지정한다. 임플리멘트에 @synthesize 넣어주면 컴파일러가 자동으로 생성된다. @interface Fraction : NSObject { int numerator; int denominator; } @prope..
4장 데이터 형과 표현식 + 5장 프로그램 반복문 + 6장 의사결정하기 Calculator Class #import @interface Calculator : NSObject { double Accumulator; // 결과값 or 중간 결과값 } - (void) setAccumulator; // 입력값 - (void) clear; // 초기화 - (void) accumulator; //결과값 - (void) add : (double) value; // 연산자 - (void) subtract : (double) value; - (void) multiply : (double) value; - (void) divide : (double) value; @end @implementation Calculator - (void) setAccumulator : (double) value..
3장 클래스, 객체, 메서드  1. 일반적인 개념 설명 객체지향 프로그래밍란 "어떤 것이 있고 당신이 그것에 취하고 싶은 행동을 정하는 활동"이다. 클래스는 특정 행동 및 집합 또는 객체 등의 집합체를 의미한다. 클래스로 부터 나온 것을 인스턴스라고 부르며 인스턴스가 수행하는 행동을 메서드라고 한다. 그리고 객체는 클래스(집합) 안의 원소이며 객체에 메서드를 적용하면 객체의 상태에 영향을 미치게 된다. 위 영향이나 관계적인 측면을 아래의 문법을 통해 표현하게 된다. 예를 들어 당신이 소유한 차에 대해서 설명해보자 당신 집에 있는 자동차는 분명히 객체가 되는 것이고 동시에 차(포괄적 개념을 의미한다)의 '인스턴스'이다. 차로 운전을 하거나 기름을 채우거나 세차 또는 수리를 하는 행위를 메서드라고 한다. 기름을 가득 채우는 행위나 차..