iOS之04-方法的声明和实现
本次重点学习和理解OC对象方法的声明和定义
代码:
/*
计算器类
方法:
1> 返回 π
2> 计算某个整数的平方
3> 计算两个整数的和
*/
#import <Foundation/Foundation.h> @interface JiSuanQi : NSObject // 返回 π
- (double)pi; // 计算某个整数的平方
- (int)pingFangWithNum:(int)num; // 计算两个整数的和
- (int)sumWithNum1:(int)num1 andNum2:(int)num2;
@end @implementation JiSuanQi - (double)pi {
return 3.14;
} - (int)pingFangWithNum:(int)num {
return num * num;
} //- (int)sum:(int)num1 :(int)num2
- (int)sumWithNum1:(int)num1 andNum2:(int)num2 {
return num1 + num2;
}
@end int main() { JiSuanQi *jsq = [JiSuanQi new]; int a = [jsq sumWithNum1: andNum2:];
// int a =[jsq sum:10 :5];
NSLog(@"num + num = %i", a); int b = [jsq pingFangWithNum:];
NSLog(@"num * num = %i", b); double π = [jsq pi];
NSLog(@"π = %.2f", π); return ;
}
1、没有传参数的方法
代码13行和24-26行 分别为没有传参数的方法声明和定义
方法声明
12 // 返回 π
13 - (double)pi;
方法实现
24 - (double)pi {
25 return 3.14;
26 }
返回值类型不能与方法名之间存在空格,否则会报错
方法名为 pi
2、传一个参数的方法
代码16行和28-30行 分别为传一个参数的方法声明和定义
方法声明
15 // 计算某个整数的平方
16 - (int)pingFangWithNum:(int)num;
方法实现
28 - (int)pingFangWithNum:(int)num {
29 return num * num;
30 }
OC方法中一个参数对应一个冒号,num为参数,并且参数前加描述信息
方法名叫:pingFangWithNum:(冒号也是方法名的一部分)
3、传两个参数的方法
代码16行和33-35行 分别为传两个参数的方法声明和定义
方法声明
15 // 计算某个整数的平方
16 - (int)pingFangWithNum:(int)num;
方法实现
32 //- (int)sum:(int)num1 :(int)num2
33 - (int)sumWithNum1:(int)num1 andNum2:(int)num2 {
34 return num1 + num2;
35 }
- (int)sum:(int)num1 :(int)num2; 两个冒号之间必须用空格隔开
方法名:sumWithNum1:andNum2:
iOS之04-方法的声明和实现的更多相关文章
- Method Swizzle黑魔法,修改 ios 系统类库方法 SEL IMP
Method Swizzle黑魔法,修改 ios 系统类库方法 版权声明:本文为博主原创文章,未经博主允许不得转载. 一般来说,系统提供的方法已经足够开发了,但是有的时候有些需求用普通方法不好做. ...
- 李洪强iOS开发之OC[010] - 有参方法的声明实现和调用
// // main.m // 09 - 有参方法的声明实现和调用 // // Created by vic fan on 16/7/5. // Copyright © 2016年 李洪强. ...
- Unity3D与iOS消息交互方法(1)--iOS接收Unity3D发出的消息
跨平台这种事情不管多NB, 总要有些与原生系统交互的方法, 比如 Unity3D与iOS消息交互方法. 一: 建立一个空的Unity工程. File --> New Project 二: 编 ...
- iOS常用公共方法
iOS常用公共方法 字数2917 阅读3070 评论45 喜欢236 1. 获取磁盘总空间大小 //磁盘总空间 + (CGFloat)diskOfAllSizeMBytes{ CGFloat si ...
- C#中方法的声明
C#中方法的声明(四要素) 访问修饰符 :public,private(方法的默认访问修饰符) 返回值类型:void 和 非void 方法名称 : 规范是方法名称取动词,每个单词的首字母大写. ...
- main方法中声明8种基本数据类型的变量并赋值
main方法中声明8种基本数据类型的变量并赋值 char→ int→ long→ float→ double byte→ short→
- 【IOS】3. OC 类声明和实现
.h文件 @interface NewClassName:ParentClassName { 实例变量://基本类型和指针类型 不能在这里初始化,系统默认会初始化 系统初始化遵循: 实例变量类型 ...
- Objective-C( 三、方法的声明与实现)
OC方法的声明与实现 oc方法的声明在@interface中 大括号外@end上面 oc方法的实现在@implementation 中@end上面 OC方法中,一个参数对应一个冒号 方法名: 例 f ...
- iOS获取电量方法
ios简单的方法: [UIDevice currentDevice].batteryMonitoringEnabled = YES; double deviceLevel = [UIDevice cu ...
随机推荐
- Linux定时任务设定
使用crontab 命令进行设定. 详情可参见:http://blog.csdn.net/xiyuan1999/article/details/8160977. 共有6项构成,前5项为时间:分 时 天 ...
- Swift - LineChart绘制折线图
LineChart,就使用Core Graphics和QuartzCore框架中的CAShapeLayer绘制.这样执行效率明显比堆砌UIView的方法效率高--占用资源少,执行快. 看看CALaye ...
- redis 列出所有的键
> KEYS * (empty list or set)
- MVC学习笔记---ModelBinder
http://www.cnblogs.com/terrysun/archive/2010/04/05/1704666.html http://www.cnblogs.com/aehyok/archiv ...
- BlueTooth: 蓝牙基础知识进阶——链路控制操作
转自:http://blog.csdn.net/augusdi/article/details/25887395 七链路控制操作 链路控制操作就是用来描述一个设备是如何加入piconet又是如何从一个 ...
- 【20140113-2】MyEclipse生成javadoc时出错:编码GBK的不可映射字符
今天生成java doc文档时,出现了如下所示的错误: 正在装入软件包 com.wisdom.test 的源文件...F:\workspace\StringUtils\src\com\wisdom\t ...
- 证明tmult_ok的正确性
csapp page124. practice problem 2.35 /* Determine whether arguments can be multiplied without overfl ...
- Install PIL on mac osX10.9
follow this instruction: http://blog.csdn.net/liushuaikobe/article/details/8729652 and if you encoun ...
- cordova+angularJS+ionic
1.创建项目 2.路由 angular.module("starter",['ionic']) // 依赖 ionic 提供的ui-router .config(function ...
- PHP导出Excel一个方法轻松搞定
/** * 导出数据为excel表格 *@param $data 一个二维数组,结构如同从数据库查出来的数组 *@param $title excel的第一行标题,一个数组,如果为空则没有标题 *@p ...