数行でお答えします。
クラス階層は、おそらくクラスとそれらの間の継承リンクで構成される構造を指します。たとえば、、などclass Car
から継承する場合がありますclass Vehicle
。これがクラス階層を構成します。
Car
ここで、演算子を使用するインスタンスを作成すると、オブジェクトnew
を取得します。Car
関係する階層はありません。つまり、2つのクラスのように、「継承によってリンクされた2つのオブジェクト」はありません。インスタンス化の時点で、クラス階層は「フラット化」されていると言えます。
したがって、オブジェクト階層というフレーズは、多くの場合、全体/部分の構造を指します。おそらく名前が付けられた別のクラスと、Wheel
からの参照を使用Car
しWheel
て、車に最大4つの車輪を含めることができます(車のオブジェクト内の車輪の配列、または必要に応じて他の種類のコンテナを想像してください)。この配置は、オブジェクトのグラフ(階層ではなく)を実行時に構成します。ここで、全体/部分(「集約」または「構成」と呼ばれることもあります)の関係が主要なリンクです。
要約すると、クラス階層とオブジェクト階層は完全に異なり、関連していません。
これがお役に立てば幸いです。