[精通Objective-C]类,接口,协议与扩展
参考书籍:《精通Objective-C》【美】 Keith Lee
目录
类
创建一个类名为Atom,继承于NSObject的类。Atom类由两个文件组成,Atom.h和Atom.m,分别为类的接口和实现。
类的接口
Atom类的接口是在头文件Atom.h中设置的,用于声明类的属性和方法。
#import <Foundation/Foundation.h>
//Atom类的父类为NSObject(大多数Foundation框架类体系中的基类),类的属性和方法都声明在@interface和@end之间。
@interface Atom : NSObject
//声明4个类的只读属性,关于属性会在后面详细介绍
@property(readonly) NSUInteger protons;
@property(readonly) NSUInteger neutrons;
@property(readonly) NSUInteger electrons;
@property(readonly) NSString *chemicalElement;
//声明1个类的方法,在Atom.h中具体实现
-(NSUInteger) massNumber;
@end
类的实现
实现Atom类的代码在Atom.m中,用于定义类的实例变量,属性和方法。
#import "Atom.h"
//在类接口中声明的所有方法都必须在类的实现文件中定义
@implementation Atom
//自定义初始化功能需要重写父类NSObject中的init方法
-(id) init{
if ((self = [super init])) {
//初始化chemicalElement属性支持的实例变量
_chemicalElement = @"None";
}
return self;
}
//实现massNumber方法
-(NSUInteger) massNumber{
return 0;
}
@end
完成类的实现后,就可以在其他类中使用它了。
#import <Foundation/Foundation.h>
#import "Atom.h"
int main(int argc, const char * argv[]) {