封装、类方法及set/get方法的介绍
2015-08-15 09:01
706 查看
1、面向对象三大特性:成员变量封装、继承、多态。
2、set方法(是保证成员变量封装性的一种重要途径)
(1)作用:提供一个方法给外界来设置自身成员值。
(2)命名规范:
<1> 方法名必须以set开头
<2>set后面必须跟上成员变量的名称,成员变量的首字母必须大写。
<3>返回值一定是void
<4>一定要接受一个参数,而且参数类型要跟成员变量类型一致。
<5>形参的名称不能跟成员变量名一致。
set方法功能:为了不想让外部直接访问成员变量而对外部提供设置成员的接口。
可以对外部提供的参数进行选择与过滤,从而避免了外部赋给成员变量非法值。
3、get方法:
(1)作用:返回对象内部的成员变量。
(2)命名规范:
<1>肯定有返回值,返回值类型肯定和成员变量类型一致。
<2>方法名和成员变量名一致。
<3>不需要接受任何参数。
4、封装能保证数据安全性,不让成员变量暴漏给外部,从而避免外部直接访问或直接修改成员变量。封装即隐藏内部实现细节。
5、当某个成员只允许外部访问而不允许外部修改时只提供get方法。如果只允许外部修改而不允许外部访问时只提供set方法。
6、封装的细节:
成员变量名的命名规则:一定要以下划线”_“开头:好处有
(1)让成员变量和get方法名称区分开
(2)可以跟局部变量区分开,一般看到以下划线开头的变量,一般都是成员变量。
二、弱语法:OC是在运行的过程中才会检测对象有没有实现相应的方法。一般在程序运行中出错就是闪退。
三、使用类名调用的方法称为类方法。使用对象调用的方法称为对象方法。以减号开头的方法都是对象方法。以+加号为开头的都是类方法。他们的区别如下:
(1)对象方法:首先以减号”_“开头,其次只能由对象来调用。
(2)类方法:以”+“开头,只能由类名来调用。
(3)可以允许类方法(相当于静态方法)和对象方法同名。
(4)类方法中是不能访问实例变量(非静态变量)或者叫成员变量。实例变量,顾名思义就是每个对象才具备的变量。因为类中只存在方法列表,是不存储实例变量的。所以用类名调用类方法时,是无法在类方法内访问到实例变量的。
(5)对象方法中可以访问到实例变量的。
(6)类方法的好处和使用场合:
不依赖于对象,执行效率高。
能用类方法尽量用类方法。
场合:当方法内部不需要使用到成员变量时,就可以改进为类方法。
(7)类方法要用类名来访问,对象方法要用对象来访问。
注意:类方法中可以调用类方法。
四、工具类:基本没有任何成员变量,里面的方法基本都是类方法。
2、set方法(是保证成员变量封装性的一种重要途径)
(1)作用:提供一个方法给外界来设置自身成员值。
(2)命名规范:
<1> 方法名必须以set开头
<2>set后面必须跟上成员变量的名称,成员变量的首字母必须大写。
<3>返回值一定是void
<4>一定要接受一个参数,而且参数类型要跟成员变量类型一致。
<5>形参的名称不能跟成员变量名一致。
set方法功能:为了不想让外部直接访问成员变量而对外部提供设置成员的接口。
可以对外部提供的参数进行选择与过滤,从而避免了外部赋给成员变量非法值。
3、get方法:
(1)作用:返回对象内部的成员变量。
(2)命名规范:
<1>肯定有返回值,返回值类型肯定和成员变量类型一致。
<2>方法名和成员变量名一致。
<3>不需要接受任何参数。
4、封装能保证数据安全性,不让成员变量暴漏给外部,从而避免外部直接访问或直接修改成员变量。封装即隐藏内部实现细节。
5、当某个成员只允许外部访问而不允许外部修改时只提供get方法。如果只允许外部修改而不允许外部访问时只提供set方法。
6、封装的细节:
成员变量名的命名规则:一定要以下划线”_“开头:好处有
(1)让成员变量和get方法名称区分开
(2)可以跟局部变量区分开,一般看到以下划线开头的变量,一般都是成员变量。
二、弱语法:OC是在运行的过程中才会检测对象有没有实现相应的方法。一般在程序运行中出错就是闪退。
三、使用类名调用的方法称为类方法。使用对象调用的方法称为对象方法。以减号开头的方法都是对象方法。以+加号为开头的都是类方法。他们的区别如下:
(1)对象方法:首先以减号”_“开头,其次只能由对象来调用。
(2)类方法:以”+“开头,只能由类名来调用。
(3)可以允许类方法(相当于静态方法)和对象方法同名。
(4)类方法中是不能访问实例变量(非静态变量)或者叫成员变量。实例变量,顾名思义就是每个对象才具备的变量。因为类中只存在方法列表,是不存储实例变量的。所以用类名调用类方法时,是无法在类方法内访问到实例变量的。
(5)对象方法中可以访问到实例变量的。
(6)类方法的好处和使用场合:
不依赖于对象,执行效率高。
能用类方法尽量用类方法。
场合:当方法内部不需要使用到成员变量时,就可以改进为类方法。
(7)类方法要用类名来访问,对象方法要用对象来访问。
注意:类方法中可以调用类方法。
四、工具类:基本没有任何成员变量,里面的方法基本都是类方法。
相关文章推荐
- JavaScript 日期操作
- Hive SQL的编译过程
- HDU 2222 Keywords Search (AC自动机模板)
- 2014年度辛星完全解读html部分
- ascii码
- linux网络编程(2)
- 最短路算法之Folyd算法
- 图的深度优先遍历递归算法主针对邻接表有向图
- Android pm命令用法
- OC中方法与函数的区别以及类的合理设计
- js用第三方插件打印lodop
- UVa 10480 Sabotage
- Redis学习(5)-常用命令
- UVA它11292 - Dragon of Loowater
- linux网络编程
- Leetcode#41||First Missing Positive
- 深入javascript面向对象,js的原型链、继承
- localStorge它storage事件
- nginx的root和alias指令的区别
- linux下底层函数实现MAC、IP地址以及网关地址