/*
类名:Car
属性:轮胎个数,时速
行为:跑
*/
//完整的写一个函数:函数的声明和定义(实现)
//完整的写一个类:类的声明和实现
//1.类的声明
//声明对象的属性,行为
//:NSObject 目的是:让Car这个类具备创造对象的能力
#import <Foundation/Foundation.h>
@interface Car:NSObject
{
//用来声明对象的属性(实例变量\成员变量,默认会初始化为0)
//@public 可以让外部的指针间接访问对象内部的成员变量
@public
int wheels; // 轮胎个数
int speed;// 时速
}
//方法(行为):方法名,参数,返回值(声明,实现)
//只要是oc对象的方法,必须以减号 - 开头
//oc方法中任何数据类型都必须用小括号 () 括住
//oc中的小括号 ():括住数据类型
-(void) run;
@end
//类的实现
//用来实现@interface中声明的方法
@implementation Car
//方法的实现 (说清楚方法里面有什么代码)
-(void) run
{
NSLog(@"车子跑起来了");
}
@end
int main()
{
//在oc中,想执行一些行为,就写上一个中括号[行为执行者 行为名称]
//利用类来创建对象
//执行了Car这个类的new行为来创建对象
//定义了一个指针变量car1,car1将来指向的是Car类型的对象
//[Car new]会创建出一个新对象,并且会返回新对象本身(新对象的地址)
Car *car1=[Car new];
Car *car2=[Car new];
//对car1所指向对象的wheels属性赋值
car1->wheels=5;
car1->speed=300;
NSLog(@"车子有%d个轮子,时速:%dkm/h",car1->wheels,car1->speed);
car2->wheels=4;
car2->speed=300;
NSLog(@"车子有%d个轮子,时速:%dkm/h",car2->wheels,car2->speed);
return 0;
}