iOS学习笔记---oc语言第二天

实例变量与方法

一、实例变量的可见度

iOS学习笔记---oc语言第二天

二、方法

oc中的方法分两种:类方法和实例方法

类方法:只能类使用 eg:+ (id)alloc  注:类方法中不能使用实例变量

实例方法:只能对象使用,eg:- (void)sayHi

iOS学习笔记---oc语言第二天

全局变量通常定义在.m文件里

引入头文件 “” he <>的区别

""一般引入自己创建的头文件,<>一般引入系统头文件

""系统会优先找工程中自检创建的文件中有没有,如果没有才会查系统类库

如果是尖括号,就会知道是系统的东西,不会找自己的类库,如果在系统中找不到那么会认为不存在这个头文件

//类方法的优势:不需要创建对象就可以调用的方法

//使用场景:某个功能跟对象没有联系,如果把方法写成实例对象,我们想要使用方法,还需要先创建一个对象,然后才能通过对象调用实例的方法,

这样做比较麻烦,因此可以使用类方法,直接用类名调用类方法即可

iOS学习笔记---oc语言第二天

多参与单参赋值并存可以更方便。

OC里面不叫调用,叫发送消息[receiver message]OC中使用消息发送机制

1,类接收到消息,即方法

2,类找到方法并执行

(设置器)setter 和 (访问器)getter

我们之前写的那些赋值取值都可以称作setter和getter

iOS学习笔记---oc语言第二天

苹果命名规范:

setter和getter命名用驼峰式命名

无论是setter还是getter内部操作的都是实例变量

每一个实例变量都需要一对setter和getter

- (id)init 这个初始化方法只能给实例变量设置默认值,不灵活

-(id)initWithName()name 自定义初始化方法,根据需求定义初始化方法。

初始化方法永远只调一次,只是初始创建对象的时候调用,以后再也调用

- (id)initWithName:(NSString *)name sex:(NSString *)sex hobby:(NSString *)hobby age:(NSInteger)age

{

_name = name;

_sex = sex;

_hobby = hobby;

_age = age;

count++;

return self;

}

initWith永远都要跟着alloc使用,不能单独调用

类的组合使用

在定义类的过程中,组合使用其他类型的对象

import 当a引入b文件,b又引入了a文件,这是会报错。

这样会导致循环引入头文件

需要使用对方的时候,有一个文件或者两个都改成@class b;在他们的.M文件引入头文件

上一篇:(18)0907_CSS选择器详解


下一篇:Ext.js 之MVC