oc对象方法

<------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------





没有返回值有参数的方法
 1.没有返回值 没有参数
 - (void)方法名称;
 
 2.没有返回值 有参数的方法定义格式
 - (void)方法名称:(参数类型)参数名称 and参数2:(参数类型)参数2;
 
 3.有返回值,有参数的方法
 定义格式:
 - (返回值数据类型)方法名称:(参数类型)参数名称 and参数2:(参数类型)参数2;


 4.有返回值 没有参数
 - (返回值数据类型)方法名称;


 5.方法访问成员变量
   在同一个类中,可以通过方法名称,直接访问.
 
 6.对象跟函数参数
 6.1.直接把对象的属性传递过去,在函数当中更改不了属性值(值传递)
 6.2.直接把对象的地址传递过去,在函数当中可以更改属性值(地址传递)
 6.3.直接把对象的地址传递过去,在函数当中定义另外一个类,此时,改变了对象的地址,无法在函数当中更改属性值.
 
 7.方法的调用:对象方法
   [对象 方法];


#import <Foundation/Foundation.h>


@interface Person : NSObject

{

@public

    NSString *_name;

    int _age;

    float _weight;

}

//定义人的行为

-(void)eat:(NSString *)foodName foodNUM:(int) num;

//散步

-(void)walk:(int) num;

-(void)show;

@end

@implementation Person

//定义人的行为

-(void)eat:(NSString *)foodName foodNUM:(int) num{

    _weight--;

    NSLog(@"人吃了%@吃了%d",foodName,num);

}

//散步

-(void)walk:(int) num{

    _weight -=num/100*0.2f;

    NSLog(@"您走了%d步,当前体重为:%.2f",num,_weight);

}

//显示信息

-(void)show{

    NSLog(@"姓名是%@,年龄是%d,体重是%.2f",_name,_age,_weight);

}

@end


#import "Person.h"

int main(int argc, const char * argv[]) {

    @autoreleasepool {

        Person *p=[Person new];

        //设置对象的值通过对象->访问成员变量。

        p->_weight = 180.0f;

        p->_name = @"gyy";

        p->_age = 20;

        [p eat:@"红烧肉" foodNUM:3];

        [p walk:400];

        [p show];

    }

    return 0;

}

结果



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值