1、#import与#include的区别,它们都是为了引入头文件,而不同的事#import确定一个文件只能被倒入一次,这是程序在递归包含中不会出现问题。

      2、Object-C的控制台输出NSLog()与C语言printf()的输出相比:

    (1)NSLog会在打印结束自动换行

    (2)NSLog还可以输出对象%@

    (3)NSLog的格式如下表

%@ 对象 %g 浮点/双字
%d,%i 整数 %s c字符串
%u,%z 无符整形 %.*s Pascal字符串
%f 浮点/双字 %c 字符
%x,%X 十六进制整数 %C unichar
%o   八进制整数 %lld 64位长整数(long long )
%zu   size_t %llu 无符64位长整数
%p 指针 %Lf 64位双字
%e 浮点/双字(科学计算) %hhd BOOL布尔型

  3、类的定义:NSObject是所有类的父类

#import <foundation/Foundation.h>
@interface Person : NSObject{
	NSString *name;
}
//实例方法
//没有参数 没有返回值
+(void) doSomething;
//一个参数
-(void)setName:(NSString *)aName;

//两个参数
-(void)setName:(NSString *)aName andAge:(NSInteger)aAge;
//类方法
-(void)print;

@end

   4、属性申明@property:@property(nonatomic,strong) NSString *name;

    详解@property  http://www.cnblogs.com/andyque/archive/2011/08/03/2125728.html

  5、关键字/限定符

    nonatomic:不采用加锁解锁机制,运行效率比atomic高  

    atomic: 原则操作,又加锁解锁机制,运行效率低,安全  

    内存管理角度  

    retain      修饰OC对象类型 讲对象的引用计数+1  

    copy  修饰OC对象类型 重新分配一片内存空间   

    strong  同retain  

    weak  

    assign 修饰c语言的基本数据类型int char long float double NSInteger

      readonly 只读(只提供了getter方法)  

    readwrite 默认  

    setter 重新设置setter的方法名  

    getter 重新设置getter的方法名

posted on 2015-03-31 16:54  晴雨晴空  阅读(92)  评论(0编辑  收藏  举报