黑马程序员-OC语言-方法重载问题(听课笔记)
2015-06-30 15:32
295 查看
-----Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
方法重载通常用于创建完成一组任务相似但参数的类型或参数的个数不同的方法。
在oc中,方法名不允许相同。
比如
在oc中是不允许的,因为它们的名字都是test:,注意,名字要包括后面的冒号。
所以在oc 中的重载应该是指参数个数不同,但是返回类型后面的名字相同。
或者是 参数个数相同,但是其标签不相同。
-(void) test:(int) intValue;
-(void) test:(float) floatValue; //错误,与第一个方法重名(test:)
-(void) test:(int) x andY:(int) y;
-(void) test:(int) x andY:(double) y;//错误,还是重名了(test:andY:)
-(void) test:(int) x :(double) y; //正确,名字不同(test::)
方法重载的概念
方法重载是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。调用重载方法时,其他语言(Java、c++)编译器能通过检查调用的方法的参数类型和个数选择一个恰当的方法。方法重载通常用于创建完成一组任务相似但参数的类型或参数的个数不同的方法。
OC中没有方法重载
oc没有严格的方法重载.在oc中,方法名不允许相同。
比如
在oc中是不允许的,因为它们的名字都是test:,注意,名字要包括后面的冒号。
所以在oc 中的重载应该是指参数个数不同,但是返回类型后面的名字相同。
或者是 参数个数相同,但是其标签不相同。
-(void) test:(int) intValue;
-(void) test:(float) floatValue; //错误,与第一个方法重名(test:)
-(void) test:(int) x andY:(int) y;
-(void) test:(int) x andY:(double) y;//错误,还是重名了(test:andY:)
-(void) test:(int) x :(double) y; //正确,名字不同(test::)
相关文章推荐
- C++中namespace的使用
- 如何创建C++程序
- C++程序的编写和实现
- 黑马程序员-OC语言-依赖关系(听课笔记)
- C++程序的构成和书写形式
- 第一个C++程序
- 从C到C++,C语言与C++的关系
- C语言实现在windows服务中新建进程的方法
- C++ typeid操作符
- c++线程池实现方法
- JNI--java和C++互相调用
- C++ map的基本操作和用法
- Effective C++ 条款28
- C++ typeid操作符
- C语言单项链表的实现
- vs2010 c++ release dump 文件生成
- 求自然对数e的值
- LeetCode_Path Sum II
- 从c++转到python项目碰到的坑--论动态语言的一个小坑
- 欧几里得算法求两个数的最大公约数