OC语言特点:
C语言的超集,可与C,C+混编,具有良好的兼容性.
具备完善的面向对象特征.
包含一个运行时系统.
类库丰富.
面向对象编程(OOP:Object Oriented Programming)简介:
常用语言:java,C#,C++
特征:对象,类,封装,继承,多态
面向过程与面向对象区别:
前者以过程为中心实现函数,依次调用,以过程为中心.
分解问题组成的对象,协调对象间相互通信.以对象为中心.
OC中类的定义:
使用对象完成程序.
先定义类,在创建对象,然后使用对象.
接口部分和实现部分分开写: 接口部分:对外声明特征和行为. 实现部分:对内实现行为.
接口部分:
标志:@[email protected]
作用:声明类的实例变量和方法,即特征和行为.
内容:类名, 父类名,实例变量,方法.
示例:
@interface Person :NSObject
{
@public
NSString *_name;
NSString *_sex;
NSString *_hobby;
int _age;
}
- (void)sayHi;
-(void)eat;
@end
实现部分:
标志:@implementation [email protected]
作用:实现方法,即实现类的行为.
实例:
@implemetation Person
-(void)sayHi
{
.....
}
-(void)eat
{
.....
}
@end
类和文件:
类:@[email protected] @implementation [email protected]
文件: .h称为接口文件或者头文件, .m称为实现文件.
默认设置如下:
1.使用类名称命名文件.
2. .h文件管理类的接口部分, .m文件管理类实现部分.
创建对象: 1.分配内存空间. 2初始化
分配内存空间:根据类中的声明的实例变量为对象分配内存,将所有实例变量置为默认值0,并返回首地址.
初始化:为对象的实例变量设置初始化值.
示例:
分配内存空间: Person *p=[Person alloc];
初始化: p=[p init];
两步连写: Person *p=[[Person alloc]init];
+(id)alloc; +表示这个方法属于类,只能类执行.id返回值类型,表示任意类型的对象,及创建好的对象.
-(id)init; -表示这个方法属于对象,只能对象执行.id返回值类型,表示初始化完成的对象.
-(id)init
{
_age=18;
return self;
}
使用对象:指针存储的首地址,代指对象. OC中使用指针代对象,进行操作.
1.Person *p=[Person alloc];
a.[Person alloc]返回值是对象的首地址,即对象.
b.p是跟对象同类型的指针变量,存储对象首地址,代指对象.
实例变量修饰符: @public ,@protected ,@privated
@public 变量访问方式: 可以直接使用->访问.
OC基础-面向对象编程简介