DBと状態遷移のオブジェクト化

SUPクラスを継承したSUBクラスのインスタンスは、SUPテーブルの主キーをユニークキーするSUBテーブルのレコードとして扱えるような気がする。ただし、逆は成り立たない(成り立たせない方が良い)場合もある。
例えば、自動車クラスを継承したバスクラスとトラッククラスを考えると、自動車クラスには総重量というメンバがいて、バスクラスには定員というメンバがいて、トラッククラスには最大積載量というメンバがいるとすると、自動車テーブルには総重量というカラム、バステーブルには自動車テーブルのキーと定員というカラム、トラッククラスには自動車テーブルのキーと最大積載量というカラムを定義すると、オブジェクトを違和感なく映し出せる。
ただし、バスでありトラックでもあるという自動車があるとした場合は対応しにくいかも知れない。あと、大型車クラスとかを間にかます場合とかもつらいかも。もっとも、そんな変更はどんな設計でも小さい規模では済みませんよ、というのなら大丈夫なんだけど。
これが大丈夫なら、O/Rのインピーダンスミスマッチって設計方針の問題に収束できちゃうんだけどね。

で、状態遷移。あるオブジェクトOが状態S1である場合、それはclass S1 extends Oとできないか。S1であるOが別の状態S2となる場合、class S2 extends Oとして扱えないか。扱えるだろうが、それは本来の意味とは離れてしまうかもしれない。