OC笔记 - 类的概念(2015.1.26)

1.对象方法

     >减号 - 开头

     >只能由对象调用

     >对象方法中可以访问成员变量(实例变量)

     >对象方法中可以调用类方法

    

2.类方法

     >加号 +开头

     >只能由类名调用

     >类方法中不可以访问成员变量(实例变量)

     >类方法中不可以调用对象方法

     >类方法中可以调用类方法(同名的除外)

    

     允许有同名的对象方法和类方法,系统通过+ - 来区分

    

     类方法的使用场合:

     当方法中没有使用到成员变量的时候尽量用类方法

     >执行效率高(如果对象方法要现找到对象再通过isa指针找到方法,而类方法直接找到方法)

     >优化内存(类方法不需要创建对象)

     >类方法一般用于编写工具方法

3.匿名对象

[Iphone new];//这个是匿名对象

当对象方法只调用一次的时候可以使用匿名对象

匿名对象可以作为实参传递

4.封装

在开发当中有时候只提供get方法,,该属性称之为只读属性

 有时候只提供set方法,该属性就称之为只写属性

 

OC有一个约定

给成员变量赋值提供一个叫做set方法的方法

 1.一定是对象方法

 2.返回值一定是void

 3.一定以set开头,set后面跟上成员变量的名称去掉下划线,并且首字母大写

 4.一定有参数,并且参数类型和成员变量类型一致,参数名称和成员变量名称去掉下划线相同

 

取成员变量的值提供一个叫做get方法的方法

 1.一定是对象方法

 2.一定有返回值,并且返回值类型和成员变量类型一致

 3.方法名称和成员变量去掉下划线一致

 4.一定没有参数

 

封装的原则:

将不需要对外提供的内容都隐藏起来

把属性都隐藏,提供公共的方法对其访问

 

封装的目的:

 同set方法封装属性,可以过滤掉一些不符合逻辑的数据,保证了我们数据的正确性

 提高了代码的健壮性

 

 封装的好处:

 将变化隔离

 提高代码的重用性

 提高了代码的安全性

5.组合模式

组合模式的概念:

 组合模式就是一个类中声明了其它类的对象

 优点:

 全局对象方法中都可以直接访问,节省了代码量

 缺点:

 依赖性比较强

 使用场景:

 当多个方法都用到了同一个对象,那么就把它设置为成员变量

 

 如何判断组合模式的合理性:

 XXX 拥有了 XXX (谁拥有谁的一个关系)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章