这是本人在学习Objective-C语言过程中所做的一些笔记,如果有错误或者笔误的话,欢迎各位朋友批评指正。
Objective-C是C语言的扩展集,是一门面向对象的语言。
那我们在Objective-C中是如何定义类的呢?请看:
//类的声明
@interface 类名 : NSObject
{
属性
}
方法的声明
@end
//类的实现
@implementation 类名
方法的实现
@end
在方法的声明中,有参数和无参数的有什么区别呢?请看:
//无参数方法的声明
-(返回值类型)方法名;
//1个参数方法的声明
-(返回值类型)方法名WithXXX:(参数类型)参数名;
//多个参数方法的声明
-(void)方法名WithXXX:(参数类型)参数名 andXXX(参数类型)参数名;
对象的创建,请看:
类名 *对象名 = [类名 new];
对象拥有类中定义的所有成员。
内存中的五大区域:
1.栈:存储局部变量
2.堆:存储手动申请的字节空间
3.BSS段:存储为被初始化的全局变量、静态变量
4.数据段(常亮区):存储已被初始化的全局变量、静态变量、常量数据
5.代码段:存储代码
类加载:1.创建对象是,肯定是可以访问类的;
2.声明1个类是,指针变量也会访问类。
程序运行时,当类第1次被访问时,会将这个类存储到内存中的代码段,这叫类加载,直到程序结束,才会被释放。
对象在内存中是如何存储的呢?请看:
1.在堆内存中申请1块合适大小的空间;
2.在这个空间中根据模板创建对象;
3.初始化对象属性
属性类型为基本数据类型,赋值0;
属性类型为C语言指针时,赋值NULL;
属性类型为Objective-C的类指针时,赋值NIL;
4.返回对象的地址。
对象只有属性,没有方法。
要访问对象的属性,可以通过以下的方式:
指针名->属性名
要调用方法,可以通过以下的方式:
[指针名 方法名]