前面我们知道了类和对象的关系, 也知道了面向对象的核心就是对象, 那么我们运用之前所学到的知识来创建我们的第一个OC类, 下面让我们来看看.
下面我们来看一个例子:
#import <Foundation/Foundation.h>
@interface Car : NSObject
{
@public
int wheels;
int speed;
}
- (void)run;
@end
@implementation Car
- (void)run
{
NSLog(@"汽车跑起来啦~~");
}
@end
int main()
{
Car *p = [Car new];
Car *p2 = [Car new];
p->wheels = 8;
p->speed = 120;
p2->wheels = 9;
p2->speed = 320;
[p run];
[p2 run];
NSLog(@"这个车子有%d个轮子, 它的最高时速是%dkm/h", p->wheels, p->speed);
NSLog(@"这个车子有%d个轮子, 它的最高时速是%dkm/h", p2->wheels, p2->speed);
return 0;
}
在OC里面设计类, 我们必须得按照下面这样子的格式来写
@interface Car : NSObject
@end
@implementation Car
@end
int main()
{
return 0;
}
在@interface这里, 一直到第一个@end这段距离里, 我们是用来声明成员变量还有声明方法名, 在这里又有三个关键字:
@public (表示声明的成员变量是公开的, 也就是哪里都可以使用这些成员变量)
@protected(表示声明的成员变量只能在本类或者继承了该类的子类才能使用)
@private(表示只能在自己本身这个类里使用, 其他类不能调用)
而在@implementation一直到第二个@end里面是用来实现方法里面的功能.
最后在main()函数里编写执行代码, 这就是我们第一个OC类
注意细节:
1. 在OC里面, 方法名都是以 " - "开头
2. 所有的成员变量都必须写在@interface的大括号里面" {} " .
3. @interface大括号" {} " 外是用来声明方法名.
4. 而@implementation里面则是用来实现方法里面的内容.
5. 方法里面的数据类型, 必须以" () " 括住, 比如- (void)XXX.
6. 在@interface和@implementation后面必须得加@end, 否则会报错.
7. 类名 : NSObject这个东西后面会仔细讲解
好了今天我们就讲到这里, 下次我们继续~~