オブジェクト指向の概念を教えれ
■ このスレッドは過去ログ倉庫に格納されています
0164150
NGNG- 本来オブジェクトの比較は第三者(Comparatorのような)が行うべきだ。
理由は、前に書いたので分かって貰えると思う。
- ところがjava言語では、Objectクラスに比較メソッド equals(Object)
が定義されていて、任意のオブジェクトの比較にこのメソッドを使う
のが標準的、ということになってる。これはおかしい。
- じゃ、なんでこうしてるのか?と考えてみると、OOの考え方が悪い方向
に影響を与えてるのではないかと推測できる。つまり、
1 オブジェクトの内部データに確実にアクセスできるのはそのオブジェクト
自身だけである、というカプセル化の考え方があるから。したがって、
第三者であるところのComparatorは潜在的に、オブジェクトを比較する
のに十分なデータにアクセスできるとは限らない。
2 「オブジェクトは自分自身について知っているとよい」という考え方が
あるから。
こんな感じ。
■ このスレッドは過去ログ倉庫に格納されています