本とか読んでても、元々オブジェクト指向的な言語を使ってたり開発をやってないと、サブクラスとかよくわかんない。本や資料にはほにゃららのサブクラスを作ってどうこうって書いてあるけど、イメージしにくい。ので、小さいプログラムで、実際どう書けばいいかをちょっと書いた。
// MyClass.h #import@interface MyClass : NSObject { } - (void)logme; @end // ファイルを MySubClass.hにしてもいいけど、メモだから同じファイルに書いておいた。 // MyClass.h に書いてあっても、プログラム的には問題ない(はず)実用には向かないし奨めないけど。 @interface MySubClass : MyClass{ } - (void)logme; @end
NSObject のサブクラス MyClass と、さらにそのサブクラス MySubClass を定義して、MyClass.h とした。
// MyClass.m #import "MyClass.h" @implementation MyClass - (void)logme { NSLog(@"MyClass logme now"); } @end // 同じく MySubClass.m にしたほうがいいけど。 @implementation MySubClass - (void)logme { NSLog(@"MySubClass logme now"); } @end
MyClass は logme メソッドを持っていて、NSLog() でログをはく。同じく MySubClass も logme メソッドを持っていて、 NSLog() でログをはく。
// どっか実行するメインのファイル たとえば MainViewController.m で MyClass.h を import #import "MyClass.h" // さらにどっかで実行。たとえば viewDidLoad() - (void)viewDidLoad { [[MyClass alloc] logme]; [[MySubClass alloc] logme]; }
なんの芸もないけど、ここから膨らませていけば、いろんなことができるはず。例えば、MyClass にだけ logmain() などを書いて、両方のクラスから呼んでみるとかね。
0 件のコメント:
コメントを投稿