2012-02-20 8 views
1

Objective-Cで継承がどのように機能するかは誰にも分かりますか?継承objective-c

私はクラスAを継承するクラスBを持っていると言います。クラスBのプロパティとメソッドにアクセスできるように、これらの2つのクラス間の接着は何ですか?

+1

「接着剤」は何を意味しますか?そして、あなたはオブジェクト指向/継承自体をよく理解していますか?つまり、すでに別のオブジェクト指向言語で作業していますか? – DarkDust

+0

メッセージについては、こちらでよく説明しています。https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/ObjCRuntimeGuide/Articles/ocrtHowMessagingWorks.html#//apple_ref/doc/uid/TP40008048- CH104-TPXREF134 – Monolo

答えて

2

isa

isaは、実行時の型を識別し、動的な「グルー」を参照します(vtable参照)。 isaのため、ランタイムは、メッセージの送信時に実行するメソッドと、タイプがselfであることを認識しています(または判断できる)。

インスタンスが作成されると、isaが割り当てられます。

他の主な寄稿者はもちろん、コンパイラです。コンパイラは、あなたが下位レベルに降下したときに引き継ぎます。インスタンス変数に直接アクセスし、メソッドを定義します。オブジェクトの作成時およびメッセージング時に、コンパイラが追加する呼び出しがいくつかあります。

0

これはSampleViewControllerはのUIViewControllerを継承し、あなたがのUIViewControllerのすべてのプロパティ/メソッドにアクセスすることができるという事実を特定し、次のコード

@interface SampleViewController : UIViewController{} 

を理解してください。

私はジャスティンがダイナミックな「接着剤」について述べたことに同意します。