OC之方法的声明实现和调用
1. 类是来描述一群具有相同特征和行为的事物的.
类还有行为.
类的声明
@interface 类名 : NSObject
{
属性.
}
方法的声明
@end
类的实现.
@implementation 类名
方法的实现
@end
前面只描述了这个类所拥有的共同的特征.使用属性来描述.
类还有行为.
行为在类中用方法来表示. 和函数特别像.
在类中创建方法来代表类的行为,分两个步骤
1). 方法的声明
写在@interface的大括弧的外面.
2). 方法的实现.
写在@implementation中.
2. 无参数的方法的声明.
1). 位置:@interface的大括弧的外面.
2). 声明的语法:
- (返回值类型)方法名称;
- (void)run;
3). 方法实现.
将方法头拷贝到@implemetation中 删除分号.补大括弧.
将方法的实现写在大括弧之中.
- (void)run
{
代码实现.
}
4). 如何调用
类中的方法不能直接调用.因为类不能直接使用.
如果非要用的话,就得创建这个类的对象.
对象中有类所定义的所有的东西,包括属性和方法.
这个时候,就要可以调用对象中的方法.
调用格式:
[对象名 方法名];
3. 带1个参数的方法的声明
1). 位置:@interface的大括弧的外面.
2). 声明的语法:
- (返回值类型)方法名:(参数类型)形参名称;
- (void)eat:(NSString *)foodName;
3). 实现.
将方法头拷贝到@implemetation中 删除分号.补大括弧.
将方法的实现写在大括弧之中.
在方法实现中可以直接使用参数的值.
4). 调用
类中的方法不能直接调用.因为类不能直接使用.
如果非要用的话,就得创建这个类的对象.
对象中有类所定义的所有的东西,包括属性和方法.
这个时候,就要可以调用对象中的方法.
调用带1个参数的方法:
[对象名 方法名:实参];
4. 带多个参数的方法的声明
1). 位置:@interface的大括弧的外面.
2). 声明语法格式:
- (返回值类型)方法名:(形参类型)形参名1 :(形参类型)形参名2 :(形参类型)形参名3;
- (int)sum:(int)num1 :(int)num2;
3). 实现
将方法头拷贝到@implemetation中 删除分号.补大括弧.
将方法的实现写在大括弧之中.
在方法实现中可以直接使用参数的值.
4). 调用
类中的方法不能直接调用.因为类不能直接使用.
如果非要用的话,就得创建这个类的对象.
对象中有类所定义的所有的东西,包括属性和方法.
这个时候,就要可以调用对象中的方法.
调用带多个参数的方法:
[对象名 方法名:实参1 :实参2 :实参3];
5. 使用注意.
1). 关于方法的名称
- (void)run; 这个方法的名称叫做run
- (void)eat:(NSString *)foodName; 这个方法的名称叫做eat:
- (int)sum:(int)num1 :(int)num2; 这个方法的名称叫做 sum: :
如果方法没有参数,那么这个方法的名字就是这个方法的名字.
如果方法有参数,那么方法的名字带了冒号的.
2). 带参数的方法的命名规范.
a. 如果我们的方法只有1个参数. 建议这个方法的名字.
xxxWith:
这么做的的话.那么在调用方法的时候,整个看起来就像是1条完整的语句.
xxxWithxxx:
b. 如果方法有多个参数.建议这个方法的名字.
xxxWith:(参数类型)实参名称 and:(参数类型)实参名称;
建议:
xxxWith参数1: and参数2: and参数3:
c. 最重要的是让在调用方法的时候,可以看起来是1条完整的语句.
d. 注意.关于方法名称
- (void)eat:(NSString *)foodName; eat:
- (void)eatWith:(NSString *)foodName; eatWith:
- (void)eatWithFood:(NSString *)foodName; eatWithFood:
- (int)sum:(int)num1 :(int)num2; sum: :
- (int)sumWith:(int)num1 and:(int)num2; sumWith: and:
- (int)sumWithNum1:(int)num1 andNum2:(int)num2; sumWithNum1: andNum2:
OC之方法的声明实现和调用的更多相关文章
- 李洪强iOS开发之OC[010] - 有参方法的声明实现和调用
// // main.m // 09 - 有参方法的声明实现和调用 // // Created by vic fan on 16/7/5. // Copyright © 2016年 李洪强. ...
- 李洪强iOS开发之OC[011] - 有参方法的声明实现以及调用练习
- 李洪强iOS开发之OC[009] -OC无参方法的声明实现和调用
- Objective-C( 三、方法的声明与实现)
OC方法的声明与实现 oc方法的声明在@interface中 大括号外@end上面 oc方法的实现在@implementation 中@end上面 OC方法中,一个参数对应一个冒号 方法名: 例 f ...
- Objective-C学习笔记(十九)——对象方法和类方法的相互调用
事实上在OC的对象方法(减号方法)和类方法(加号方法)并非相互独立的,它们也能够发生千丝万缕的关系,今天我们来研究下它们两者相互调用的问题.该样例还是以People类为基础. (一)对象方法调用类方法 ...
- 李洪强iOS开发之OC[012] -类的声明实现小结
// // main.m // 11 - 内容总结 // // Created by vic fan on 16/7/9. // Copyright © 2016年 李洪强. All righ ...
- 源码学习:一个express().get方法的加载与调用
刚刚接触express,它的中间件确实把我搞得头晕.get的回调中要不要加next?不加载还会执行下一个中间件么?给get指定'/'路径是不是所有以'/'开头的访问在没有确切匹配时都能执行?use件又 ...
- 总结javascript中的全局变量和局部变量的区别以及声明函数和调用函数的区别
<!DOCTYPE html> <html> <head lang="en"> <meta charset="utf-8&quo ...
- C#中方法的声明
C#中方法的声明(四要素) 访问修饰符 :public,private(方法的默认访问修饰符) 返回值类型:void 和 非void 方法名称 : 规范是方法名称取动词,每个单词的首字母大写. ...
随机推荐
- 阐述 QUEST CENTRAL FOR DB2 八罪
作为一个从事oracle plsql发展2猿 - 年计划,现在,在退出DB2数据仓库项目. 同PL/SQL Developer参考,下文PLSQL,阐述QUEST CENTRAL FOR DB2 5. ...
- SQL点滴8—the account is currently locked out. The system administrator can unlock it.
原文:SQL点滴8-the account is currently locked out. The system administrator can unlock it. 今天遇到的问题比较有意思. ...
- C# 标签(条码)
C# 标签(条码) 上一篇说到条码的打印,主要是通过读取模板定义文件(XML文件),然后结合从数据库中读取的动态数据结合而产生条码.下面主要说一下如何设计这个条码模板.设计过程也很简单,只需要简单的拖 ...
- Perl基础(1)chop与chomp的区别
chop是去掉字符串的最后一个字符 chomp是去掉"$/"指定的结尾符号 测试程序一: [perl] #!/bin/perl $tmp = "sincere" ...
- 数据类型 text 和 varchar 在 add 运算符中不兼容
原文:数据类型 text 和 varchar 在 add 运算符中不兼容 在SQL Server2005中,使用类似下面的Update语句: 1 UPDATE tb_SmsBlacklist SET ...
- 【PLSQL】过程procedure形参和参数
************************************************************************ ****原文:blog.csdn.net/clar ...
- awk精简教材
awk就不多介绍了,最优秀的文本处理工具之一 一.内置变量表 属性 说明 $0 当前记录(作为单个变量) $1~$n 当前记录的第n个字段,字段间由FS分隔 FS 输入字段分隔符 默认是空格 NF 当 ...
- MySQL5.7 安装过程中出现 attempting to start service 过不去
MySQL5.7 安装过程中出现 attempting to start service 过不去. 1,机制打开服务,把MySql服务名启动(我的是MySqlAliyun) 启动失败:提示1067错误 ...
- .NET MVC4 实训记录之七(实现资源的自主访问后续)
我们在上一篇中讨论了如何利用ModelMetadata实现国际化资源文件访问,但也留下了一些问题,即:如何利用ModelMetadata实现相同类型的属性信息的个性化资源显示.本人没有找到合适的方案, ...
- C#中几个经常犯的错误总汇
在我们平常编程中,时间久了有时候会形成一种习惯性的思维方式,形成固有的编程风格,但是有些地方是需要斟酌的,即使是一个很小的错误也可能会导致昂贵的代价,要学会善于总结,从错误中汲取教训,尽量不再犯同样错 ...