首页 > 代码库 > 第一个OC类

第一个OC类

类只关系三个方面:

1、名称(类名):首字母大写,如果名称是由多个单词组成的,后面的单词遵循驼峰原则

2、属性:一般以下划线开头

3、行为(方法):首字母小写,后面遵循驼峰原则

 

类的声明:

1、作用:就是对类的属性和行为进行声明

2、NSObject使类拥有创建对象的能力

 

示例:定义一个手机的类

typedef enum{

  colorWithBlack,//这里不要写错,是逗号,不是分号

  colorWithWhite.

  colorWithTuHaoJin

}Color;

 

//类的声明

@interface Iphone : NSObject //使类Iphone拥有创建对象的能力

{

  @public  //可以再类的外部调用成员变量

  int _model;    //手机型号

  int _cpu;   处理器

  Color _color;  //颜色

}

-(void)looklMyPhone;  //无参无返回值的方法

-(char *)receiptMessage;   //无参有返回值的方法

-(void)sendMessage:(char *)message withPhoneNumber:(char *)number;  //有参无返回值的方法

//注意点:oc当中,一般将方法名写的像个句子,这样可以做到见名知意。所以在参数的前面-冒号的前面用修饰词对参数加以说明。这个修饰词是方法名的一部分

@end   //这个千万不能丢,@end是声明的结束

 

//类的实现:在类的声明中,声明了什么方法,就在实现当中实现什么方法

@implementation Iphone

-(void)lookMyPhone{

  NSLog(@"手机的cpu是:%i,型号是:%i,颜色是:%i",_cpu,_model,_color);

}

 

-(char *)receiptMessage{

  return "good for you";

}

 

-(void)sendMessage:(char *)message withPhoneNumber:(char *)number{
    NSLog(@"你给%s发送的消息是:%s",number,message);
}

@end

 

#import <Foundation/Foundation.h>

int main(){

  //当你尝试做一些事情(执行功能)的时候,你就这样写:【类名/对象  方法名称】

 

  //创建一个对象

  Iphone *iphone1 = [Iphone new];     //new在此做了三件事:1、开辟存储空间 2、初始化成员变量 3、返回空间地址

  iphone1->_color = colorWithTuHaoJin;

  iphone1->_cpu = 4;

  iphone1->_model = 5;

 

//调用方法

//用类名调用的方法,叫做类方法

//用对象调用的方法,叫做对象方法

  [iphone1 lookMyPhone];

 char *str = [iphone1 receiptMessage];

  NSLog(@"%s",str);

  [iphone1 sendMessage:"good bye" withPhoneNumber:"114"];

  renturn 0;

}

第一个OC类