#import <Foundation/Foundation.h>
//----@interface部分------用于描述类和类的方法
@interface Fraction:NSObject
/*Fraction为类名,父类为NSObject,
NSObject类在Object.h中定义
导入Foudation.h会自动包含这个类*/
-(void) print;//-通知编译器他是一个实例方法,+指的是类方法
-(void) setNumerator: (int) n;
-(void) setDenominator: (int) d;
@end
/*----@implementation部分--用于描述类对象的实例变量储存的数据
并在接口中声明方法的实际代码*/
@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部分----实现程序的预期目的
int main (int argc,char *argv[])
{
@autoreleasepool
{
Fraction *myFraction;//myFraction是Fraction对象的引用(或指针)。
//创建一个分数实例
//[类的名称和该类的实例名称 执行方法】
//Objective-C采用特定的语法对类和实例应用的方法
//[ClassOrInstance method];
myFraction = [Fraction alloc];//alloc是allocate的缩写
myFraction = [myFraction init];//两句合并myFraction = {{Fraction alloc} init}
//设置分数为1/3
[myFraction setNumerator:1];
[myFraction setDenominator:3];
//使用打印方法显示分数
NSLog(@"The value of myFraction is:");
[myFraction print];
}
return 0;
}