1.
Ø
Ø
1.
类的声明
1)
Ø
Ø
Ø
#import
// 类的声明
@interface Car : NSObject
{
}
- (void)run; // 跑的行为
@end
2)
Ø
Ø
Ø
3)
@public可以让Car对象的wheels和speed属性被外界访问
4)
加上:NSObject的目的是让Car类具备创建对象的能力
2.
类的实现
// 类的实现
@implementation Car
- (void) run
{
}
@end
3.
创建对象
1)
// 主函数
int main()
{
}
2)
Ø
Car *c = [Car new];
用一个指针变量c指向内存中的Car对象
Ø
跟用指向结构体的指针访问结构体属性一样,用->
c->wheels = 3;
c->speed = 300;
4. 创建多个Car对象
Ø
Car *c1 = [Car new];
c1->wheels = 4;
Car *c2 = [Car new];
c2->speed = 250;
[c1 run];
Ø
Car *c1 = [Car new];
c1->wheels = 4;
c1->speed = 250;
Car *c2 = c1;
c2->wheels = 3;
[c1 run];
5. 面向对象封装的好处
Ø
Ø
6.
对象与函数参数
Ø
Ø
u
u
2.
1.
@interface和@implementation的分工
u
u
2.
常见错误
l
l
l
l
l
l
3.
语法细节
l
l
l
l
4.
OC方法和函数的区别
l
l
l
l
5.
OC的方法注意
l
l
l
6.
@implementation
Ø
@implementation Car : NSObject
{
}
- (void) run
{
}
Ø
3.
设计一个Caculator计算器类,它拥有计算的功能(行为)
1.
不带参数的方法
u
// 方法声明
- (double)pi;
// 方法实现
- (double)pi
{
}
2.
带一个参数的方法
u
// 方法声明
- (double)square:(double)number;
// 方法实现
- (double)square:(double)number
{
}
3.
带多个参数的方法
u
// 方法声明
- (double)sumOfNum1:(double)num1 andNum2:(double)num2;
// 方法实现
- (double)sumOfNum1:(double)num1 andNum2:(double)num2
{
}
4.
方法名注意
l
l
4.
l
[Car
l
[ [Car