2013-02-15 28 views
1

有人請向我介紹下面的代碼(objective-C)中的實例/對象。我很困惑,因爲void之前的( - )void意味着它是一個實例的方法,但我不知道實例/對象在哪裏。代碼中的實例/對象是什麼?

#import <Foundation/Foundation.h> 
//interface section 
@interface Fraction: NSObject 
- (void) print; 
- (void)setNumerator: (int) n; 
- (void)setDenominator: (int) d; 
@end 
//implementation section 
@implementation Fraction 
{ 
    int numerator; 
    int denominator; 
} 
-(void) print; 
{ 
    NSLog(@"%i/%i",numerator,denominator); 
} 
-(void) setNumerator:(int)n 
{ 
    numerator = n; 
} 
-(void)setDenominator:(int)d 
{ 
    denominator = d; 
} 
@end 
//program section 
int main(int argc, const char * argv[]) 
{ 
//this is a program to work with fractions-class version 
    @autoreleasepool { 
     Fraction *myFraction; 
     //create an instance of a fraction 
     myFraction = [Fraction alloc]; 
     myFraction = [myFraction init]; 
     //set fraction to 1/3 
     [myFraction setNumerator:1]; 
     [myFraction setDenominator:3]; 
     //display the fraction via print methoD 


     NSLog(@"the value of myFraction is:"); 
     [myFraction print]; 
     } 
    return 0; 
} 

回答

1

myFraction是Fraction類的實例。實例方法必須指向一個實例而不是一個類,正如你所看到的,print,setNumerator和setDenominator都是發給myFraction的。

+0

什麼是實例方法? – user1706978 2013-02-15 13:58:06

+0

@ user1706978,在類前面有一個「 - 」的類中的任何方法 - 在本例中爲print,setNumerator,setDenominator和init。 – rdelmar 2013-02-15 16:06:04

相關問題