"这是一份关于iPhone开发中Objective-C基础知识的笔记文档,涵盖了类的声明、实现、实例化以及访问权限等内容。"
Objective-C是苹果公司iOS和macOS平台的主要编程语言,它是一种面向对象的语言,基于C语言并扩展了Smalltalk的一些特性。这份笔记主要讲解了以下几个关键知识点:
1. **指令与包含文件**:
- `#import` 指令用于引入其他类的头文件,这是Objective-C中导入类定义的方式。例如,`#import "class.h"` 会将class.h中的类定义引入到当前文件中。
2. **类的声明**:
- 类在Objective-C中通常在`.h`(头文件)中声明,使用`@interface`关键字。例如:
```
@interface MyClass : NSObject {
// 类的属性
}
// 类的方法声明
@end
```
- `NSObject` 是许多Objective-C类的基类,它提供了基础的对象行为,如内存管理、初始化方法和反射。
3. **类的实现**:
- 类的实现位于`.m`(实现文件)中,使用`@implementation`关键字。例如:
```
@implementation MyClass
// 类的方法实现
@end
```
- 在同一`.m`文件中,可以同时声明和实现类,但这并不常见。
4. **引用其他类**:
- 使用`@class`指令可以在不实际导入头文件的情况下声明一个类的存在。例如:
```
@class OtherClass;
```
- 然后在需要使用的地方导入头文件,例如 `#import "OtherClass.h"`。
5. **实例化对象**:
- 对象的实例化使用`alloc`和`init`方法,或者`new`关键字。例如:
```
MyClass *myInstance = [[MyClass alloc] init];
```
- 声明对象变量时,使用星号`*`表示它是指针类型。
6. **访问权限**:
- Objective-C有三种访问控制级别:`@private`、`@protected` 和 `@public`。
- `@private` 的成员仅在声明它们的类内部可见。
- `@protected` 的成员对当前类和其子类可见。
- `@public` 的成员对所有类都可见。
7. **其他语法**:
- Objective-C中的属性可以用`-`或`+`前缀来标识实例方法(`-`)和类方法(`+`)。
- 字段默认访问权限为`@protected`。
这份笔记对初学者掌握Objective-C的基础知识非常有帮助,涵盖了从创建类到实例化对象,再到控制访问权限的基本概念。通过学习这些内容,开发者可以开始构建iOS应用的基础架构。