objective-c如何定义一个类

 类的声明的一些规则

1.类名首字母大写

2.创建类的文件名和类名相同

 现在我们创建一个Person类

@interface Person:NSObject{
    NSString * name;//这是一个字符串对象
    NSInteger age;//这是一个整型变量
    NSString * address;//这是一个字符串对象
}
@end

    @interface 表示我们正在声明一个类,这是类的接口,紧接着@interface的是类的名字,然后是一个冒号,后面

跟了一个OC的基类NSObject,这个类是其他所有有关对象的类的基类。然后紧接着是一个大括号,大括号里面是

有关的成员变量的声明。最后面有一个@end表示声明部分结束。

@interface Person:NSObject{
    NSString * name;//这是一个字符串对象
    NSInteger age;//这是一个整型变量
    NSString * address;//这是一个字符串对象
}

-(void)setName:(NSString *)aName;//参数是一个字符串对象

-(void)setAge:(NSString *)aAge;

-(void)setAddress:(NSString *)aAddress;

-(NSString *)getName;//返回一个字符串对象

-(NSString *)getAge;

-(NSString *)getAddress;

@end

    在大括号外面是实例方法的声明,在开始时要前缀一个“+”或者“-”号(有关“+”或“-”号的区别在另一篇学习记录里面),

然后紧接着是方法的名称,后面一个冒号表示这个方法需要参数,后面的一个括号里面的是参数的类型,外面是形式

参数。没有参数就直接一个分号。

上面所写的代码都包含在  Person.h 文件中,而方法的具体实现代码需要包含在 Person.m 文件中。

 Person类的实例方法的实现


#import "Person.h"//首先要导入Person类的头文件

@implementation Person


-(void)setName:(NSString *)aName{
    name=aName;
}

-(void)setName:(NSString *)aAge{
    age=aAge;
}

-(void)setName:(NSString *)aAddress{
    address=aAddress;
}

-(NSString *)getAge{
    return age;
}

-(NSString)getName{
    return name;
}

-(NSString)getAddress{
    return Address;
}

@end

    首先映入眼帘的是导入Person类头文件的操作,然后是#implementation 关键字,表示我们开始实现类的方法了

实现哪一个类呢?#implementation 关键字后面的类名告诉了我们答案。然后后面具体方法的实现就是声明去掉后面的

分号后跟上一对大括号,然后将具体的实现代码放入那对大括号所确定的代码块儿中。

     如此,我们便完成了OC中一个类的定义。

你可能感兴趣的:(OC学习)