[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends] Re:JBuilder/ListControlトホホ技発見



> Hiroshi> え? モデルの toString()ってまず真っ先にオーバライドしませんか。
> Hiroshi> オーバライドすることで、なにか思わぬ落とし穴があるのでしょうか。。
               :
> TableA に 'class_string' というカラムを作っておき、ここに ClassB.toString()、
> ClassC.toString() を保存しておき、実行時にどのサブクラスのものか判断するように
> 書きました。
> 
> select 文はこんな感じです。
> 
> select * from TableA, TableB whele (TableA.record_no = TableB.parent_no)
>  and (TableA.class_string = 'ClassB')

object.toString() でクラス名(型情報)を返しているってこと
でしょうか。
toString()はインスタンスの「内容を表す」文字列を返すべきで、
「型情報」を返すのは怪しい実装だと感じます。

クラス名が欲しいなら、object.getClass().getName() で得られますが
これでは何か都合が悪かったのでしょうか。

-- 
/** 久野 浩 - Hiroshi Kuno
 * @xxxxxxxxxx ISO C9X, ISO C++, Java and astoronomy
 */