概念は、PHPの関数で見られるアプローチとは異なります。Objective Cでは、オブジェクトを操作します。オブジェクト間で動作(PHP関数、Objective Cではメソッドと呼ばれる)を共有するには、その動作をクラス階層のどこかにスロットする必要があります。
したがって、特定のケースでは、たとえばloadinfoのサブクラスであるジェネリッククラスにメソッドを実装します。次に、クラスとクラスの両方がそのジェネリッククラスからサブクラス化し、メソッドを継承します。NSViewMyGenericViewview1view2loadinfo
基本クラスのの実装から逸脱したい場合はloadinfo、(view1またはview2で)次のようにして部分的にオーバーライドできます。
- (void) loadview {
[super loadview]; // perform the default implementation
[self doSomethingDifferint]; // perform subclass specific stuff
}
... また:
- (void) loadview {
[self doSomethingDifferint]; // perform subclass specific stuff
[super loadview]; // perform the default implementation
}
...または、次のようにして完全にオーバーライドします。
- (void) loadview {
[self doSomethingCompletelyDifferent]; // perform subclass specific stuff
}
ちなみに、Objective Cでクラスとメソッドに名前を付けるときは、CamelCase標準に従うことをお勧めします。そうすると、クラスはとにView1なりView2、メソッドはになりますloadInfo。
さらに、言語とその機能を最大限に活用するために、一般的なオブジェクト指向の原則とObjectiveCの特定の側面を確認することをお勧めします。