2. 型継承と実装継承の分離

 これまでのオブジェクト指向は、実装継承を型継承の下位機能と見なし、
 「実装継承と型継承を一体化」する事で、概念の単純化を図ってきた。
 例えば、
    ・ 型継承と同時に、実装継承     ・・・ クラス
    ・ 型継承と同時に、部分的実装継承・・・ 抽象クラス
    ・ 型継承のみ              ・・・ インターフェース
 というのはあっても、
    ・ 実装継承のみ
 という選択肢がなかった。

 アスペクト指向は、実装継承のみという選択肢を与える事で、
 本来別々のものである、実装継承と型継承を明確に分離して扱う事を、
 可能にした。

3. 「実装の単継承vs多重継承」 問題の解決

 多重継承を、「実装継承と型継承を一体」という視点で実現する場合、
 「選択的な実装多重継承」が必要になる。
 しかし、型のセマンティクスと、実装のセマンティクスは異なるため、
 両者を同じ視点で扱うと、混乱が生じ易かった。

 上記の混乱の回避策は、「実装多重継承の排除」だった。
 実装単継承の元で、実装多重継承の提供機能を実現するには、
    ・型の多重継承              ・・・ インターフェース
    ・メソッド実装の委譲
 を使用する。
 但し、メソッド実装の委譲は、実装レベルのコードで実現する必要があった。

 アスペクト指向は、上記「メソッド実装の委譲」を、
 静的に(宣言的に)取り扱う事を、可能にした。