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

[学习笔记—Objective-C]《Objective-C 程序设计 第6版》第三章 类,对象和方法 课后题解析 3-7

2015-06-25 11:53 573 查看
第三章的课后题多半都比较主观,在此只分享第七题。第七题几乎囊括了第三章所有的知识点,非常典型。

以下是题目和本人编写的代码。为了方便起见,将头文件,实现文件,主函数文件合并到了一起。

3-7 定义一个名为XYPoint的类,用来保存笛卡尔坐标(x,y),其中x和y均为整数。定义一些方法,分别用来设置点的坐标x和y,并检查他们的值。编写一个Objective-C程序,实现这个新类并测试它。

#import <Foundation/Foundation.h>

@interface XYPoint : NSObject
{
int xPoint;  //实例变量
int yPoint;
}

//设值函数
-(void) setXPoint: (int) x;  //x坐标
-(void) setYPoint: (int) y;  //y坐标

//取值函数
-(int) xPoint;  //返回x坐标
-(int) yPoint;  //返回y坐标

//打印函数
-(void) print;

@end

@implementation XYPoint

-(void) setXPoint: (int) x
{
xPoint = x;
}

-(void) setYPoint: (int) y
{
yPoint = y;
}

-(int) xPoint
{
return xPoint; //返回xPoint值
}

-(int) yPoint
{
return yPoint; //返回yPoint值
}

-(void) print
{
NSLog(@"The point is: (%d, %d)", xPoint,yPoint);
}

@end

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

XYPoint *myPoint_1 = [[XYPoint alloc] init]; //第一个坐标
XYPoint *myPoint_2 = [[XYPoint alloc] init]; //第二个坐标

[myPoint_1 setXPoint:3];
[myPoint_1 setYPoint:1];

[myPoint_2 setXPoint:4];
[myPoint_2 setYPoint:5];

NSLog(@"The xPoint of the first point is %d:", [myPoint_1 xPoint]);

NSLog(@"The first point is:");
[myPoint_1 print];

NSLog(@"The second point is:");
[myPoint_2 print];
}
return 0;
}


本人此程序新建了两个对象(坐标),并分别提取了坐标值。

此程序应用了非常典型的设值和取值方法:

-(void) setXPoint: (int) x
{
xPoint = x;
}

-(void) setYPoint: (int) y
{
yPoint = y;
}

-(int) xPoint
{
return xPoint;
}

-(int) yPoint
{
return yPoint;
}


在后面的章节中,还会介绍通过设置属性来替代传统的设置取值方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: