下面是一个描述Objective-C类的使用的demo
#import <Foundation/Foundation.h>
@interface Fractions: NSObject
-(void) print;
-(void) setNumerator: (int) n;
-(void) setDenominator: (int) d;
@end
@implementation Fractions{
int numerator;
int denominator;
}
-(void)print{
NSLog(@"%i/%i", numerator, denominator);
}
-(void)setNumerator:(int)n{
numerator = n;
}
-(void)setDenominator:(int)d{
denominator = d;
}
@end
int main(int argc, const char * argv[]) {
@autoreleasepool {
Fractions *myFraction;
myFraction = [Fractions alloc];
myFraction = [myFraction init];
[myFraction setNumerator:1];
[myFraction setDenominator:3];
NSLog(@"The value of my fraction is:");
[myFraction print];
}
return 0;
}
程序分成三个部分:
- @interface
- @implementation
- program
The @interface Section
当你想定义一个新的类,你要告诉编译器你的你的类是从哪里来的,并定义类的方法和属性。
@interface NewClassName: ParentClassName
propertyAndMethodDeclarations;
@end
类方法:
-(void) setNumerator: (int) n;
(-)号表示这是一个实例方法,即new了之后才可以使用的方法。与之对应的时(+),这表示类本身的方法,此类方法通常应用在类本身。
The @implementation Section
这是一部分包含你在@interface部分声明方法的具体实现。
@implementation NewClassName{
memberDeclarations;
}
methodDefinitions;
@end
@implementation Fractions{
int numerator;
int denominator;
}
这里面numerator和denominator是类的属性,一旦类实例化就会生成。
The program Section
这一部分包含了你用来解决实际问题的代码。