Objective-C方法的声明实现及调用

1.无参数的方法

1)声明

a.位置:在@interface括弧的外面

b.语法:

  • (返回值类型)方法名称;

    @interface Person : NSObject
    -(void) run;
    @end

2)实现

a.位置:在@implementation中实现

b.语法:加大括弧将方法实现的代码写在大括孤之中

复制代码
@implementation Person;
-(void)run{
    NSLog(@"我在跑步");
}
@end

3)调用

a.方法是无法直接调用的,因为类是不能直接使用的,必须要先创建对象

b.语法:

对象名 方法名\]; int main(int argc, const char * argv[]) { Person *p = [Person new]; [p run]; } ### 2.单个参数的方法 1)声明 a.位置:在@interface括弧的外面 b.语法: -(返回值类型)方法名称:(参数类型)形参名称; @interface Person : NSObject -(void)eat:(NSString *)foodName; @end 2)实现 a.位置:在@implementation中实现 b.语法:加大括弧将方法实现的代码写在大括孤之中 @implementation Person; -(void)eat:(NSString *)foodName{ NSLog(@"%@好美味!",foodName); } @end 3)调用 a.方法是无法直接调用的,因为类是不能直接使用的,必须要先创建对象 b.语法: \[对象名 方法名:实参\]; int main(int argc, const char * argv[]) { Person *p = [Person new]; [p eat:@"烤鱼"]; } ### 3.多个参数的方法 1)声明 a.位置:在@interface括弧的外面 b.语法: -(返回值类型)方法名称:(参数类型)形参名称 :(参数类型)形参名称; @interface Person : NSObject -(int)sum:(int)num1 :(int)num2; @end 2)实现 a.位置:在@implementation中实现 b.语法:加大括弧将方法实现的代码写在大括孤之中 @implementation Person; -(int)sum:(int)num1 :(int)num2{ int num = num1+num2; return num; } @end 3)调用 a.方法是无法直接调用的,因为类是不能直接使用的,必须要先创建对象 b.语法: \[对象名 方法名:实参:实参\]; int main(int argc, const char * argv[]) { Person *p = [Person new]; NSLog(@"sum=%d",[p sum:1 :1]); } 运行结果 ![](https://file.jishuzhan.net/article/1750729491434442754/a7cf409351db87987478532a8e878e90.webp)

相关推荐
清水白石0084 分钟前
生成器不是性能银弹:什么时候该用 `yield` 省内存,什么时候它会拖慢 Python 数据处理吞吐?
开发语言·python·原型模式
不甘先生6 分钟前
Go context 实战指南:从入门到生产级并发控制(架构师避坑手册)
开发语言·后端·golang
AI进化营-智能译站7 分钟前
ROS2 C++开发系列18-STL容器实战:deque缓存激光雷达数据|priority_queue调度任务
开发语言·c++·缓存·ai
空中海14 分钟前
01. iOS 逆向基础、环境搭建与授权
macos·ios·cocoa
初心未改HD22 分钟前
Go 泛型完全指南:从入门到实战
开发语言·golang
西红柿炒番茄3126 分钟前
【Python】一个自动切换壁纸的python程序
开发语言·python
空中海27 分钟前
iOS LLDB 调试、Mach-O、Runtime 与二进制分析
macos·ios·cocoa
空中海28 分钟前
iOS 防护、加固复测与综合交付
macos·ios·cocoa
ShiJiuD66688899929 分钟前
JSP Cookie和Session
java·开发语言
FQNmxDG4S9 小时前
Java多线程编程:Thread与Runnable的并发控制
java·开发语言