小白學開發(iOS)OC_ @property 參數(2015-08-05)
//
// Person.h
// 手動內存管理
//
// Created by admin on 15/8/5.
// Copyright (c) 2015年 admin. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "Car.h"
@interface Person : NSObject
/*
@property 參數的作用
1. 生成set和get方法的聲明
2. 生成set和get方法的簡單實現
3. 如果沒有手動聲明相對的成員變量,則會自動生成一個_開頭的成員變量
*/
/*
@property 參數的類型
1. 與set方法內存管理相關參數
retain:生成符合內存管理原則的set方法(應用於對象類型)
assign:直接賦值,(應用於基本數據類型、對象類型)
copy:
2. 多線程相關
nonatomic:不生成多線程、多線程管理代碼(使用這個就可以了,效率高一點)
atomic:生成多線程、多線程管理代碼(默認情況是這個,開發mac軟件多用這個,APP基本不用)
3. 是否要生成set和get方法
readwrite:可讀可寫屬性,同時生成set與get方法
readonly:只讀屬性,只生成get方法
4. set與get方法重命名的參數
setter:設置生成的set方法名稱
getter:設置生成的get方法名稱
*/
@property (nonatomic,retain)Car *car;
@property (nonatomic,retain)NSString *name;
@property (nonatomic,assign)int age;
@property (nonatomic,assign)float weight;
@property (nonatomic,assign,readonly)int idCard;
// 改變set方法名和get方法名
@property (nonatomic,assign,setter=shezhi:,getter=quzhi)BOOL isDied;
@end
// Person.h
// 手動內存管理
//
// Created by admin on 15/8/5.
// Copyright (c) 2015年 admin. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "Car.h"
@interface Person : NSObject
/*
@property 參數的作用
1. 生成set和get方法的聲明
2. 生成set和get方法的簡單實現
3. 如果沒有手動聲明相對的成員變量,則會自動生成一個_開頭的成員變量
*/
/*
@property 參數的類型
1. 與set方法內存管理相關參數
retain:生成符合內存管理原則的set方法(應用於對象類型)
assign:直接賦值,(應用於基本數據類型、對象類型)
copy:
2. 多線程相關
nonatomic:不生成多線程、多線程管理代碼(使用這個就可以了,效率高一點)
atomic:生成多線程、多線程管理代碼(默認情況是這個,開發mac軟件多用這個,APP基本不用)
3. 是否要生成set和get方法
readwrite:可讀可寫屬性,同時生成set與get方法
readonly:只讀屬性,只生成get方法
4. set與get方法重命名的參數
setter:設置生成的set方法名稱
getter:設置生成的get方法名稱
*/
@property (nonatomic,retain)Car *car;
@property (nonatomic,retain)NSString *name;
@property (nonatomic,assign)int age;
@property (nonatomic,assign)float weight;
@property (nonatomic,assign,readonly)int idCard;
// 改變set方法名和get方法名
@property (nonatomic,assign,setter=shezhi:,getter=quzhi)BOOL isDied;
@end
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.