[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[jfriends:00665] Re: Java の初期化
> 田中です。
どうもです。
> コンストラクタと初期化の件ですが、コンストラクタとは関
数の実装に対して複数の
> インターフェースを実現するためのもので、その複数のイン
ターフェースを実現する
> 際に渡されなかったパラメータなどに初期化が発生する、と
私は理解しています。
パラメータに関係なく初期化されるものに対しての
初期化はどこで行うんでしょう?
class Test {
Integer i;// = new Integer(0);//ここで初期化?//'1'
Test(){
//i=new Integer(0);//それともこちら?//'2'
}
}
これなら・・私は別に'1'でも'2'でも
あまり不自然には感じませんが'1'の場所で他のメソッドを
呼び出し、その戻り値で初期化を行うのは非常に不快感
を感じるのですが、皆さんはどうですか?
&
このような単純なソースの場合は結果が正しいので
間違っていることの証明が難しいのです。
意味上の説明(初期化はコンストラクタで行うなど)
では、「正しく動いているんだからいいんじゃないの?」
となってしまいます。
クラスが初期化されていないのだからメソッドが
正しく動かないはずなのに、正常動作してします。
複雑な場合はちょっとちがいますが・・
どのように説明すればいいのでしょうか?
__________________________________________________
Do You Yahoo!?
Yahoo! BB is Broadband by Yahoo!
http://bb.yahoo.co.jp/
------------------------------------------------------------------------
★あなたのホームページに“最新ニュース”をお届け!!
http://ap.infoseek.co.jp/ticker2.html