『iOS学习笔记』 - 变量 属性 方法 实现

本文深入解析了iOS中变量、属性及方法的定义与实现,通过具体的代码示例,详细阐述了Objective-C语法中变量声明、属性设定及方法定义与实现的过程。特别关注@synthesize关键字的使用,以及其与@property的关系,强调了正确引用与关联的重要性。

 

『iOS学习笔记』 - 变量 属性 方法 实现

 

1、代码说明:

Person.h

Person.h
#import <Foundation/Foundation.h>

@interface Person : NSObject
{   
    int age,sex;//变量的定义
    int height,width;
}

@property int age,sex;//属性的定义
@property char height;

//-(void) setAge;
-(int) setAge1 :(int)a;
-(int) setWH :(int)w :(int)h; 
/* 方法的定义
 格式  
-(返回的数据类型) 方法名称 :(参数1的数据类型)参数1名称   :(参数2的数据类型)参数2名称
*/

@end

Person.m

Person.m
#import "Person.h"

@implementation Person

@synthesize age,sex;//访问器

//@synthesize height;
/*
 【我的注解】 
  @synthesize 引用 @property 关联 @interface
  引用不到,或者关联不到,均会抛错。 
*/


#pragma mark ------setAge----

//-(void) setAge;
//{
//    age=20;
//}

#pragma mark ------setAge1------
-(int) setAge1 :(int)a
{
    age=a;
    return age;
}

#pragma mark ------setWH------
-(int) setWH :(int)w :(int)h  //方法的实现
{
    width = 100;
    height=175;
    return age*height;
}

@end

 

main.m

main.m
#import <Foundation/Foundation.h>

#import "Person.h"

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

    @autoreleasepool {
        
        Person *person=[Person alloc];
        [person init];
        
        person.age=1;//属性
                
        NSLog(@"person.ag = %i",person.age);//输出属性,注意类型匹配,否则抛错
        NSLog(@"person = %@",person);//输出对象
        
        [person setWH:6 :10];//方法
        
        [person release];//如果使用了ARC机制,release就不能用了。
        
        
    }
    return 0;
}

 

 

2、我的注解(详见下面三张图):

@synthesize 引用 @property 关联 @interface

引用不到,或者关联不到,均会抛错。

转载于:https://www.cnblogs.com/ClarkChan/archive/2012/05/14/2499127.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值