OC语言3-方法和文件编译

转载 2016年05月31日 11:04:06

一、OC方法

(一)对象方法

  1. 对象方法以-开头如 -(void)xx;

  2. 对象方法只能又对象来调用

  3. 对象方法中可以访问当前对象的成员变量

  4. 调用格式 [对象名 对象方法名];

  5. 设计一个学生类和狗类,练习对象方法的使用。

学生类的声明:

image

学生类的实现:
image

狗类的声明:

image

狗类的实现:

image

主程序:

image

(二)类方法

  1. 类方法以+开头 如+(void)put;

  2. 类方法只能由类来调用

  3. 类方法中不能访问实例(成员)变量,因为类方法又类来调用,并没有创建存储空间来存储类中的成员变量。

  4. 调用格式:[类名 类方法名];

  5. 类方法的好处和适用场合:

    • 不依赖于对象,执行效率更高;

    • 能用类方法解决的问题,尽量使用类方法;

    • 场合:当方法内部不需要使用到成员变量时,可以改为类方法。

  6. 设计一个计算器类,练习使用类方法。

计算器类的声明:

image

计算器类的实现:

image

主程序:直接使用类名调用类方法
image

注意1:可以允许类方法和对象方法同名。

注意2:在对象方法中可以调用类方法。

(三)方法名

(1)不带参数的方法

声明:

image

调用:
image

(2)带参数的方法

声明:
image

调用:

image

注意:冒号也是方法名的一部分。

二、文件编译

在工作中,通常把不同的类放到不同的文件中,每个类的声明和实现分开,声明写在.h头文件中,实现写在相应的.m文件中去,类名是什么,文件名的前缀就是什么。

假设有两个类,分别是Person类和Dog类,则通常有下面五个文件:

  1. Person.h Person类的声明文件

  2. Person.m Person类的实现文件

  3. Dog.h Dog类的声明文件

  4. Dog.m Dog类的实现文件

  5. Main.m 主函数(程序入口)

在主函数以及类的实现文件中要使用#import包含相应的头文件。

补充:import有两个作用:

一是和include一样,完完全全的拷贝文件的内容;

二是可以自动防止文件内容的重复拷贝(即使文件被多次包含,也只拷贝一份)。

在使用命令行进行编译链接文件的时候,通常是把.m文件单文件编译,然后再把所有的目标文件链接,但是在Xcode中,是把所有的.m文件都进行编译链接的,如果出现重复定义的错误,那大部分问题根源应该就是文件内容被重复包含或者是包含.m文件所引起的。

源文件中不论是使用include还是import,都不能包含.m或者是.c文件,只能放声明。因此,在OC中通常把类拆分开来,拆分成声明和实现两个部分。

提示:这也是编程思想的一种体现,可以说.h和.m文件时完全独立的,只是为了要求有较好的可读性,才要求两个文件的文件名一致,这也是把接口和实现分离,让调用者不必去关心具体的实现细节

Xcode是写一行编译一行,有简单的修复功能,红色是错误提示,黄色警告。如果在程序中声明了一个变量,但是这个变量没有被使用也会产生警告信息。

在调试程序的时候,如果发现整个页面都没有报错,但是一运行就错误,那么一定是链接报错。

3、黑马程序员-OC方法和文件编译

OC方法和文件编译 一、OC方法 (一)对象方法 (1)对象方法以-开头如 -(void)xx; (2)对象方法只能又对象来调用 (3)对象方法中可以访问当前对象的成员变量 (4)调用格式   [对象...
  • zwcshy
  • zwcshy
  • 2014年11月30日 11:37
  • 241

IOS之OC方法和文件编译

一、OC方法 (一)对象方法 (1)对象方法以-开头如 -(void)xx; (2)对象方法只能又对象来调用 (3)对象方法中可以访问当前对象的成员变量 (4)调用格式   ...
  • LCF_3_6
  • LCF_3_6
  • 2017年04月16日 17:35
  • 83

OC方法和文件编译

OC方法和文件编译 一、OC方法 (一)对象方法 (1)对象方法以-开头如 -(void)xx; (2)对象方法只能又对象来调用 (3)对象方法中可以访问当前对象的成员变...

OC方法以及文件编译

OC方法 OC方法包括对象方法和类方法。 对象方法与函数  1.对象方法都是以减号 -   2.对象方法的声明必须写在@interface和@end之间    对象方法的实现必须写在@impleme...
  • cl110cl
  • cl110cl
  • 2015年03月12日 00:41
  • 416

OC方法和文件编译(总结的很好拿来用了)

一、OC方法 (一)对象方法 (1)对象方法以-开头如 -(void)xx; (2)对象方法只能又对象来调用 (3)对象方法中可以访问当前对象的成员变量 (4)调用格式 ...

易语言-配置文件的更新方法-续(3)

[updateinfo] 相当于多维数组 要更新文件的个数 1=2 配置项的个数 2=3 每个配置项的数量 3=2 [1] 文件名称 1-0-1=V1-0-1 配置文件名称 节...

黑马训练营--IOS学习---OC语言学习总结3

OC复习总结: 这个文件是在学习完C语言的基本用法后,回顾C语言的一些语法和易错,不易理解的一下内容,可能会存在内容不连续的情况. 本文内容,有参考自 M了个J的博客 和 ...

OC语言 系统文件

ios文件系统 当第一次启动app时,ios操作系统就为此app创建了一个文件系统,该文件系统下默认有四个目录,分别是: Documents:存储用户在操作app时产生...
  • kiwirr
  • kiwirr
  • 2015年12月25日 17:48
  • 241

Asihttprequest上传文件到 appache服务器,脚本语言php(服务器端),客户端iphone oc

写在前面的话: 今天又弄了一上午,终于把纠结的问题搞定了,是这样的,我按 http://dancewithnet.com/2010/05/09/run-apache-php-mysql-in-mac...

爬爬爬之路:OC语言(五) 字典 集合常用方法介绍

字典OC中字典是一个类似与数组的容器 保存的是一个个 键值对 所谓键值对 就是 一个key(键)对应一个value(值) 两者合成一个键值对 字典保存的内容是无序的, 不能像数组一样通过下标取...
  • ljcdsg
  • ljcdsg
  • 2015年10月30日 23:10
  • 373
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:OC语言3-方法和文件编译
举报原因:
原因补充:

(最多只允许输入30个字)