您的位置:首页 > 移动开发 > Objective-C

初探Object-c 1:类的初步

2015-04-01 09:44 141 查看
开始学习Object-c也有一周了,在这准备写一下自己的笔记和体会。

第一篇,打算探讨Objective-c中的类的开始部分。

Objective-c 是C语言的超集,也可以认为是C语言的面向对象版本。因此,对类的学习是学习OC学习的很关键的一个点。

类的定义:

类分为接口文件和实现文件。接口文件为.h,实现文件为.m.

在接口文件中,使用@interface 来定义类的成员。

@interface Fraction : NSObject

{
int numerator;
int denominator;
}

@property int numerator,denominator;

-(void) print;
-(double) convertToNum;
-(void) setTo:(int) n over:(int) d;
-(void) add: (Fraction *)f;
@end


其中,@property是编译器自动生成关于变量的set和get方法。

在实现文件.m中,使用@import 导入类的定义文件.h,然后在@implement 和 @end 中实现类的方法。

//
//  Fraction.m
//  MyFirstDemo
//
//  Created by Lanbase on 15/3/31.
//  Copyright (c) 2015年 Lanbase. All rights reserved.
//

#import "Fraction.h"

@implementation Fraction

@synthesize numerator,denominator;

-(void) print
{
NSLog(@"%i/%i",numerator,denominator);
}

-(double) convertToNum
{
if(denominator != 0)
{
return (double)numerator/denominator;
}
else
{
return 1.0;
}

}

-(void) setTo:(int)n over:(int)d
{

numerator = n;
denominator = d;

}

-(void) add:(Fraction *)f
{
numerator = numerator * f.denominator + f.numerator * denominator;
denominator =  denominator * f.denominator;
}

@end


其中@synthesize配合定义文件中@propert,产生相关变量的geth和set方法。

注意到,在add方法中,参数变量的数据类型是类,必须使用(类名 *)的方法。

接下来,准备研究OC中的类的继承和重载。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  oc