Objective-C 面向对象, 实例方法和类方法

建一个Person类

<Person.h>    //定义实例方法和类方法



 OC中的方法
 方法:是类的功能代码,在(.h)文件中声明,在(.m)文件中实现。
    语法:
 - | + (返回类型)方法名:参数列表;
 {
 // 方法体
 }
 
 减号(-)表示实例方法,加号(+)表示类方法
 */

//类方法
/*
 注意
    1.类方法可以调用类方法
    2.类方法不可以调用实例方法,但是类方法可以通过创建实例对象访问实例方法
    3.类方法不可以使用实例变量,类方法可以使用self, 因为self不是实例变量
    4.类方法作为消息,可以被发送到类里面去,不能发送到对象里面去
 */


#import <Foundation/Foundation.h>

@interface Person : NSObject
{
    @public
    NSString *_name;
    NSInteger _age;
    NSString *_hobby;
}



-(void)sayHello;  //实例方法

-(void)sayHelloName:(NSString *)name
             andAge:(NSInteger)age;  //声明实例方法


+(void)sayHi;  //类方法

+(void)hiGuys;   //类方法

@end





<main.m>  调用实例方法和类方法

#import <Foundation/Foundation.h>
#import "Person.h"
int main(int argc, const char * argv[]) {
    @autoreleasepool {
//Person *personA = [Person new];
        Person *personA = [[Person alloc] init];
        [personA sayHello];
        
//        personA -> _name = @"大哥";
//        personA -> _age = 24;
        [personA sayHelloName:@"猪猪侠" andAge:22];
        
      
        [Person sayHi];  //类方法   只能用类名调用      
        [Person hiGuys];
    }
     
    
    return 0;
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值