OC笔记-2

简介:

1、增加的类型

id类型,可以认为是NSObject * 或者 void *

nil类型,等同于null,表示一个目标的指针


2、OC类分为2个文件

.h 文件存放类,函数申明

.m 文件放类的具体实现


3、类申明使用关键字 @interface  @end  来申明

类实现使用关键字 @implementation @end  来实现

“+” 表示类的方法

“-"  表示对象的方法


4.1类申明 <Dog.h>

#import <Fundation/Fundation.h>

@interface  Dog : NSObject //类Dog 继承于类NSOject

{   

//......

}

@end


4.2类实现 <Dog.m>

#import "Dog.h"

@implementation Dog

-(id) init {

return [self initWithAge : 10];//相当于self->initWithAge(10),self为类或对象,initWithAge为函数

}

-(id) initWithAge : (int) newAge {

self = [super init];

if (self) {

age = newAge;

}

return self;

}

@end


5、创建对象

Dog *dog = [Dog alloc];

初始化构造函数

[dog init];

销毁对象

[dog release];


6、类中字段和函数

@interface  Dog : NSObject

{

//字段定义在此

@public

int age;

@protected

int ID;

@private

float price;

}

-(id) init;

-(void) setAge : (int) newAge;

-(float) g:(int)x :(int)y; //g为函数名,x,y为参数

//函数定义在此

@end

//所有OC类,接口申明必须要带 * ,这里 * 既表示指针也表示引用--Dog * mydog;


7、OC在.h 头文件定义的所有函数都是pulic 类型;

OC通过Categories来实现函数的私有化;

目录
相关文章
|
7月前
|
缓存 Java iOS开发
OC中动态方法解析
OC中动态方法解析
26 1
跟着小码哥一起学习OC语法,都在这里了
OC语法,这里面介绍的有: 1、NSObject对象相关:NSObject的本质、NSObject的内存分配、OC类的底层结构、isa指针和superclass指针。 2、KVO、KVC、分类的实现原理、如何给分类添加属性。 3、block相关:block的本质、block如何捕获变量、block本质对象类型、block与copy的关系、如何在block中修改变量、block的内存管理、以及有何解决block循环应用的问题。
100 0
|
编译器 iOS开发
[OC Runtime编程指南_翻译]五、动态方法解析
[OC Runtime编程指南_翻译]五、动态方法解析
84 0
|
编译器 Python
|
编译器 C语言 Swift
|
Java C语言 iOS开发
|
存储