ObjectiveC实验指导剖析.docx

上传人:b****4 文档编号:4473130 上传时间:2022-12-01 格式:DOCX 页数:19 大小:2.25MB
下载 相关 举报
ObjectiveC实验指导剖析.docx_第1页
第1页 / 共19页
ObjectiveC实验指导剖析.docx_第2页
第2页 / 共19页
ObjectiveC实验指导剖析.docx_第3页
第3页 / 共19页
ObjectiveC实验指导剖析.docx_第4页
第4页 / 共19页
ObjectiveC实验指导剖析.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

ObjectiveC实验指导剖析.docx

《ObjectiveC实验指导剖析.docx》由会员分享,可在线阅读,更多相关《ObjectiveC实验指导剖析.docx(19页珍藏版)》请在冰豆网上搜索。

ObjectiveC实验指导剖析.docx

ObjectiveC实验指导剖析

 

Objective-C

语言实验手册

 

注:

一下为本试验手册对应硬件配置

配备IntelCore2Duo、Corei3、Corei5、Corei7或Xeon

处理器的Mac电脑

2GB内存OSXv10.6.6或更高版本(建议使用v10.6.8)7GB可用磁盘空间部分功能要求使用AppleID;须遵守服务条款。

目录

第一章HelloObjective-C5

实验一输出HelloObjcetive-C5

实验二Bool类型7

第二章类与对象9

实验一自定义类9

实验二汽车类12

第三章继承13

实验一People类的继承13

实验二汽车类的继承15

第四章复合16

实验一复合的应用16

实验二练习复合18

第五章数据类型20

实验一重要的数据类型20

实验二数组MutableNSArray的练习21

第六章字典22

实验一字典的使用22

实验二字典的练习23

第七章结构体类型24

实验一结构体的使用24

实验二结构体练习24

第八章枚举器26

实验一枚举器enumerator的使用26

实验二枚举器练习26

第九章分类27

实验一分类的概念27

实验二分类练习28

第一章HelloObjective-C

实验一输出HelloObjcetive-C

与以往的编程语言一样,编程的开始回让大家输出一句最著名的编程语言“HelloWord”,OC也一样,我们也先来输出一段文字“HelloObjective-c”。

打开Xcode,选择”CreatanewXcodeproject”,新建一个项目,如图所示。

以后我们输出命令行的程序都在这里进行。

然后在ProductName里输入“HelloOC”作为我们的第一个项目名称,Type选择Foundation。

CompanyIdentifier输入公司的名字,这里可以输入学校的名字。

点击“Next”选择要保存的路径后点击“Create”。

点击main.m文件在这里就可以写代码了,我们的第一个程

序代码如下图所示。

Command+R键来运行程序。

输出结果如下图所示。

 

实验二Bool类型

完成书中2.3.1所示代码

新建一个项目命名为Test1.2

在Test1.2.m文件中完成一下代码

#import

//returnsNOifthetwointegershavethesame

//value,YESotherwise

BOOLareIntsDifferent(intthing1,intthing2)

{

if(thing1==thing2){

return(NO);

}else{

return(YES);

}

}//areIntsDifferent

//givenaYESvalue,returnthehuman-readable

//string"YES".Otherwisereturn"NO"

NSString*boolString(BOOLyesNo)

{

if(yesNo==NO){

return(@"NO");

}else{

return(@"YES");

}

}//boolString

intmain(intargc,constchar*argv[])

{

BOOLareTheyDifferent;

areTheyDifferent=areIntsDifferent(5,5);

NSLog(@"are%dand%ddifferent?

%@",

5,5,boolString(areTheyDifferent));

areTheyDifferent=areIntsDifferent(23,42);

NSLog(@"are%dand%ddifferent?

%@",

23,42,boolString(areTheyDifferent));

return(0);

}//main

查看运行结果。

第二章类与对象

实验一自定义类

新建一个项目命名为Test2.1,右键选择“NewFile,

选择Objective-CClass,

Subclassof选择NSObject,Class命名为Student.

在Student.h文件里我们声明两个属性,一个是NSNumber类型的age,一个是NSString类型的name。

从名字我们可以看出,这两个属性分别是学生类的年龄和姓名。

声明属性之后,我们还需要一个方法来打印学生的年龄和姓名,代码如下图所示。

然后我们在Student.m文件里,我们要实现在.h文件里声明的方法,代码如下图。

在main.m文件里首先我们用#include来引用Student.h头文件的main函数里我们来初始化一个Student的实例,将实例的两个属性age和name分别赋值。

然后我们用自己新建的实例来调用学生类的方法,代码如下所示。

输出结果如下所示。

实验二汽车类

需求:

建立一个Car类,声明两个属性分别是一个NSNumber类型的price代表汽车的价格,另一个是NSString类型的color代表汽车的颜色,然后再声明一个方法叫printPrice:

andColor,方法的功能就是输出汽车的价格和汽车的颜色。

在main函数里实例化一个实例myCar,调用方法输出结果。

第三章继承

实验一People类的继承

建立一个People类,声明两个属性分别是NSNumber类型的age表示人的年龄,和NSString类型的name代表人的名字,代码如下图所示。

再People.m文件里实现方法,代码如下图所示。

为了了解继承的概念,下面我们再建立一个Student类,让

Student类继承People类,Student类里什么都不写,只是继承自People类,建立后的文件结构如下图。

然后我们在main函数里初始化一个Student类型的实例stu,我们看看是否有stu.age和stu.name这两个继承自People类的属性,最后我们调用People类里printName:

andAge,看是否继承了People类相应的方法。

main函数的代码如下。

实验二汽车类的继承

需求:

新建立一个Automobile类该类有两个属性,分别是NSNumber类型的price代表车的价格和NSString类型的color代表汽车的颜色,然后我们写一个方法用来输出机车的价格和颜色。

建完Automobile类之后我们在声明一个Car类,Car的父类是Automobile,在main函数里实例化一个Car类的实例命名为myCar,赋值myCar的两个属性,调用myCar的输出方法,通过这些操作我么来进一步熟悉继承的概念。

第四章复合

实验一复合的应用

为了明白复合的概念我们用一个客观的例子来说明,一个水分子是由两个H原子和一个杨原子组成,下面我们就建立这样三个类。

建立一个名字叫做HElement的类带代氢元素在.m文件立覆盖description方法,代码如下:

同样我们再建立一个代表氧元素的文件OElement,.m文件的代码如下:

最后我们建一个Water类代表水,我们再.h文件里分别引入HElement和OElement两个类来代表水是由氢元素和氧元素组成,然后我们写一个print方法来打印一些内容。

代码如下:

再Water的实现文件里我们分别初始化定义的两个变量,最

后打印输出几句话。

代码如下

同样我们再main函数里初始化一个Water类的实例来调用

我们定义的print方法,代码如下:

打印的结果如下:

实验二练习复合

需求:

建立一个Keyboard类代表键盘,覆盖自身的description方法放回字符串“Thisisakeyboard”。

建立一个Mouse类代表鼠标,同样覆盖自身饿description方法,返回字符串“ThisisaMouse”。

最后建立一个Computer类代表计算机,再类中声明两个变量分别是Keyboard类型和Mouse类型,代表计算机中包括键盘和鼠标的关系。

Mouse里包含一个print方法用以打印键盘和鼠标类里description方法中的内容。

第五章数据类型

实验一重要的数据类型

本章主要练习一些主要的数据类型和对应的一些数据处理

方法,声明的变量代码如下:

输出结果如下:

实验二数组MutableNSArray的练习

需求:

建立一个动态数组名字为myArray,数组首先用initWithCapacityf方法初始化,然后动态的增加三个类型的变量,分别为一个整形,一个字符串和一个数组类型。

最后打印动态数组中保存的内容。

第六章字典

实验一字典的使用

按照如下代码练习字典的使用,并分析功能。

运行结果如下所示:

实验二字典的练习

需求:

建立一个可变类型字典myDictionary,用alloc和init的方式初始化,再自定中加入三个键值对,分别是NSString类型、NSArray类型和NSDictionary类型,其中的数据内容自定义添加,然后遍历打印出所有内容。

第七章结构体类型

实验一结构体的使用

练习结构体的声明、赋值和使用,练习代码如下:

输出结果如下:

实验二结构体练习

需求:

声明一个Range的结构体来表示一个整数的范围,由int类型的变量location(表示起始数值)和int类型的变量length(表示范围的长度)组成,例如一个范围从100到200的Range类型。

定义完之后输出范围的起始数值范围长度和终止数值三个整数。

第八章枚举器

实验一枚举器enumerator的使用

枚举器使用方法代码如下:

输出结果如下:

实验二枚举器练习

需求:

声明一个枚举器,枚举器存储一个存储学生名字的数组,其中的一个学生名字叫“Jobs”,用循环遍历这个数组,如果遍历到名字叫“Jobs”的学生则输出这个名字。

第九章分类

实验一分类的概念

分类主要的用途之一在于,当几个人做一个项目的时候,某些人负责其中一个大类的某些方法,这样就可以用一个分类来完成,分类写好后别人负责调用就行了,理解下面的代码,下面的代码是NSString类的一个分类,相当与给NSString类加了一个方法,代码如下:

运行结果如下:

实验二分类练习

需求:

建立一个计算器类Calculator,类里面由两个double类型的属性,然后建立一个分类名字为method实现计算器的加减乘除功能。

再main函数里调用分类里的方法。

建立新的分类步骤如下:

NewFile之后的接图如下:

选择Objective-Ccategory点击Next。

在Category中写入分类的名字,在这里我们叫Method,点击Next。

最后在分类里调用相应方法,别忘了在调用分类方法的时候要#import分类的头文件。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1