Objective-Cの勘所3 クラスの扱い

今回はクラスの宣言とクラスの実装について説明する

クラスの宣言

クラスの宣言を記述するファイルには拡張子に.hを付ける。これはヘッダファイルと呼ばれる。

@interface クラス名 : スーパークラス名 <プロトコル> {//クラスブロック内では変数の宣言を行う//…何らかの変数宣言}//クラスブロック外ではメソッドの宣言を行う//…何らかのメソッド宣言@end

interfaceブロック内では変数の宣言を行うことができる。interfaceブロック外ではメソッドの宣言を行うことができる。@interfaceから@endまでがクラスの宣言にあたる。
プロトコルについてはこの記事の最後で説明する。

クラスの実装

クラスの実装を記述するファイルには拡張子に.mを付ける。これはメインファイルと呼ばれる。

@implementation クラス名//ここで変数やメソッドの実装を行う//…何らかの実装@end

@implementationから@endまでがクラスの実装にあたる。

プロトコルとは何か

Javaのインターフェースによく似ているもの。プロトコルはメソッドの宣言だけで実装が無い為、実装は自分で用意する必要がある。Javaのインターフェースと同じで、プロトコルを使用しているにも関わらず、プロトコルで定義されている実装を行わない場合にはエラーとなる。

以下はヘッダファイル(.h)に記述している。

@protocol プロトコル名 - (void)メソッド名;@end@interface クラス名:スーパークラス名 <プロトコル名>//メソッドの宣言 ...@end

プロトコルとインターフェースは同じものである。プロトコルを取り込むことを採用と呼ぶ。プロトコルは以下のように複数採用することができる。

@interface クラス名:スーパークラス名 <プロトコル名1, プロトコル名2>//メソッドの宣言 ...@end

以上
 
 
参考
Objective-c言語入門

投稿者 SmokyDog

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です