网易公开课链接:http://v.163.com/special/opencourse/ios7.html
MVC设计模式:
M:Model 数据
V:view 显示用户界面,用来展示数据,但不拥有数据
Controller:控制器。作用是控制Model数据如何显示在view上
controller能够无限制的访问model和view ,而不能被访问。
控制器提供一个动作给试图,当时图被触控发生响应,则将动作发给控制器
Object-C 的属性
属性实际上是一个setter方法和一个getter方法,通过setter方法设置值 通过getter方法获取值
setter方法和 getter方法会被默认写出,但不显示
.h 它是公共API 它是类中你希望具有的公共性质 让其他人能够调用的方法
.m则是私有API 以及你所有的实现
NSObject在Foundation框架中是iOS中每一个类的根类
在实现文件中,需要导入头文件
.h
@import<Foundation/Foundation.h>
@interface card:NSObject
//声明属性和方法
@end
.m
#import "card.h" //导入头文件
//如果需要定义一些只能.m用的私有属性和方法,可用如下方法
@interface card( ) //类名 ()
//声明私有的属性和方法
@end
@implementation card
@end
强弱引用
strong 表示强指针指向对象,当对象的引用存在强引用,不为0时,会将对象留在堆中,将引用计数为0,没有强引用时,内存会被释放
weak 如果还有强引用,就将对象继续留在堆中,当对象的引用计数为0,不存在强引用时,weak指针会被置为nil
nonatomic 非原子性 表示不是线程安全的
BOOL 时原始类型,不存储在堆中,所以不需要强/弱引用,也就不需要内存管理,但仍然可以是nonatomic
-(void) 表示这个方法不返回任何东西