OC面向对象封装

时间:2023-11-21 18:54:56

  面向对象语言的三大特性:封装、继承、多态

  封装:不暴露自己类的内部的属性,提高自己的数据的安全性;就像一个接线盒一样,内部结构看不到,只有外部的接口提供给我们使用,这样既安全又美观;在代码方面就是结构性好;

  例如:

 #import <Foundation/Foundation.h>
//Person类
@interface Person : NSObject
{
int _age;
}
//set方法的声明
- (void) setAge:(int) newAge;
//get方法
- (int)age;
@end @implementation Person
//set方法的实现
- (void) setAge:(int) newAge
{
if(newAge<=)//对传入的参数的简单过滤
newAge = ;
_age = newAge; }
//get方法的实现
- (int)age
{
return _age;
} @end

  对于自己的属性_age,如果是public,外界可以随便赋值,比如-10都可以,但是年龄怎么可能是负数呢;

  所以类的属性一般都通过set,get方法赋值和取值;