Objective_C學習日記(1)--OC中類和實例的基本使用

@interface部分

#import <Foundation/Foundation.h>

/*定義的類的名稱。本程序中,Fraction是我們自定義的名
NSObject是該類的父類名稱,由Foundation.h導入
OC中定義新類的時候必須告訴OC編譯器該類來自何處*/
@interface Fraction: NSObject
//下面爲聲明類中的方法。
/*開頭的負號表示該方法上一個實例方法,必須通過對象來調用。
也可以爲+,直接通過類調用*/
-(void) print;
-(void) setNumerator: (int) n;
-(void) setDenominator: (int) d;
-(int)  numerator;
-(int)  denominator;
@end

@implementation部分

/*
 描述數據 並且實現方法,
 */
@implementation Fraction
{
    //這裏創建的是實例變量
    int numerator;
    int denominator;
}
//下面爲實現interface部分中聲明的方法
-(void)print{
    NSLog(@"%i/%i",numerator,denominator);
}

-(void)setNumerator:(int)n{
    numerator = n;
}
-(void)setDenominator:(int)d{
    denominator = d;
}
-(int)denominator{
    return denominator;
}
-(int)numerator{
    return numerator;
}
@end

@program部分

int main(int argc, const char * argv[]) {
    @autoreleasepool {

        //*表示myFrac是Fraction對象的引用。相當於一個指針
        //myFrac並不存儲數據,而是存儲的引用。
        //該引用指向了存儲 數據的內存地址值


        Fraction *myFrac;
        //1.創建並初始化對象
        myFrac = [Fraction alloc];//創建對象分配內存空間
        myFrac = [myFrac init];//初始化對象

        //2.上面兩條語句在oc中非常常見,因此可以簡寫爲一條
        //myFrac = [[Fraction alloc] init];
        //3.也可以使用更簡便的方式
        //Fraction *myFrac = [Fraction new];


        //調用方法並傳參
        [myFrac setDenominator:3];
        [myFrac setNumerator:1];

        NSLog(@"Hello, World!%i/%i",[myFrac getNum],[myFrac getDen]);
        //調用無參方法
        [myFrac print];
    }
    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章