- 532 名前:デフォルトの名無しさん mailto:sage [04/04/04 01:22]
- >>531
さらに、自分が委ねられたメソッド起動リクエストについては、無条件委譲先 ではなく、あらかじめ別に用意した移譲先に委譲する…という縛りを設ければ より完全にクラスベースの振る舞いをさせることができそうです。 たとえば、Smalltalk のクラスは(インスタンス)メソッドを持っていますが、 それらはインスタンスから委譲された場合のみ起動でき、自分で起動する ことはできません。これは先の無条件委譲のしばりが効いていると考えるとうまく 説明できます。また、インスタンスから委譲されたが自分は持っていない メソッドについては、ここで述べた「自らがレシーバでないときは、無条件 移譲先に委譲できない」という縛りから、二つある委譲先スロットのうち、 無条件移譲先には委譲できず、もう一方、つまりスーパークラスへ委譲せざるを 得ない、というふうに解釈すればよいわけです。
|

|