>クラスには、メンバー変数を隠したり、メンバー変数やメソッドをまとめたり、
>オブジェクトをたくさんつくれるというメリットがあります。
こちらを見ていただくとわかるかと思うのですが、
http://kmaebashi.com/programmer/object/othello.html
「メンバー変数を隠したり、メンバー変数やメソッドをまとめたり」というのは、
「疑りぶかい~」の想定読者は(たとえCで書いても)すでにやっているだろう、
というのが前提です。
この前提が正しいかどうかはよくわかりません。世間のCプログラマは、
staticを使ってデータや関数を隠そうなどとは考えたこともない人が
大部分なのかもしれません。だとすれば、私がやっていることは効率の悪い方法だ、
ということになるかと思います。
ただ、もしこの前提が正しいとするなら、そういうプログラマにカプセル化を
トクトクと語っても、「何だそんなことは俺もとっくにやってるよ」と思われるのが
オチです。でも、クラスには、たいやきさんも挙げておられるように
「オブジェクトをたくさんつくれるというメリット」もあるので、
そこを無視して「何だそんなことは俺もとっくにやってるよ」と思われたら
先に進めない。「疑りぶかい~」でマルチプルインスタンスを強調している
意図はそこです。
継承やポリモルフィズムは、いずれ書こうと思ってほったらかしになっている、
というのが実態ではありますが、
>継承には、重複コードを省くというメリットがあります。
>ポリモーフィズムには、ロジックの共通化というメリットがあります。
このメリットはどっちも間違っているような。
少なくともいまどき実装継承ははやらないですし、ポリモルフィズムは
同じインタフェースで違うロジックを与える機能ですので(Template Methodパターン
みたいな使い方もあるにはありますが)。
>オセロゲームですが、普通に一つのオブジェクトしかつくれないようなプログラムを書いておけば、サーブレットから起動されればそれぞれのオブジェクト(オセロ盤)が
>作られますから、マルチインスタンスを気にしなくてもよいと思います。
>イメージ沸きますでしょうか。
すみません、イメージ沸きません。
「普通に一つのオブジェクトしかつくれないようなプログラム」における
「プログラム」とはどのような単位ですか?
「サーブレットから起動」の「起動」とは、具体的にどういうことですか?
「起動」されたプログラムが終了するタイミングはいつですか?