[#38470] ruby-dev summary 21403-21530 (draft) — Minero Aoki <aamine@...>

青木です。

25 messages 2003/10/07
[#38475] Re: ruby-dev summary 21403-21530 (draft) — maili31s@... (SugHimsi==SUGIHARA Hiroshi) 2003/10/07

すぎむし。

[#38480] Re: ruby-dev summary 21403-21530 (draft) — Minero Aoki <aamine@...> 2003/10/08

青木です。

[#38481] marshal_dump (was Re: ) — m_seki@... 2003/10/08

[#38484] Re: marshal_dump (was Re: ) — matz@... (Yukihiro Matsumoto) 2003/10/09

まつもと ゆきひろです

[#38486] Re: marshal_dump (was Re: ) — Masatoshi Seki <m_seki@...> 2003/10/09

咳といいます

[#38489] exit status on exit! — YANAGAWA Kazuhisa <kjana@...4lab.to>

<http://www.unixuser.org/~ysjj/diary/?200310a&to=200310082#200310082>

29 messages 2003/10/09
[#38490] Re: exit status on exit! — Koji Arai <JCA02266@...> 2003/10/09

新井です。

[#38503] Re: exit status on exit! — YANAGAWA Kazuhisa <kjana@...4lab.to> 2003/10/10

In Message-Id: <20031010.082218.74733862.JCA02266@nifty.ne.jp>

[#38505] Re: exit status on exit! — Koji Arai <JCA02266@...> 2003/10/10

新井です。

[#38507] Re: exit status on exit! — matz@... (Yukihiro Matsumoto) 2003/10/11

まつもと ゆきひろです

[#38514] Re: exit status on exit! — YANAGAWA Kazuhisa <kjana@...4lab.to> 2003/10/11

In Message-Id: <1065883639.405037.23137.nullmailer@picachu.netlab.jp>

[#38515] Re: exit status on exit! — WATANABE Hirofumi <eban@...> 2003/10/11

わたなべです。

[ruby-list:38599] Re: initializeから同じクラスのメソッドを呼ぶ

From: Tietew <tietew-ml-ruby-list@...>
Date: 2003-10-17 04:23:43 UTC
List: ruby-list #38599
On Fri, 17 Oct 2003 12:38:31 +0900
In article <20031017033830.C88D045A800@helium.ruby-lang.org>
[[ruby-list:38598] initializeから同じクラスのメソッドを呼ぶ]
Makoto Satoh <makotosato2@yahoo.co.jp> wrote:

> クラスAのinitializeで、インスタンス変数@fooを初期化する
> のに少し処理が必要なので、同じクラスAのインスタンスメソ
> ッドとして定義しました。
> 
> class A
>   def initialize
>     @foo = init_foo()
>   end
>   attr_reader('foo')
> 
>   def init_foo
>     ...
>   end
>   private :init_foo
> end
> 
> 後ほど、このクラスAのインスタンスaを作ると、a.fooがちゃ
> んと値を返します。
> 
> この場合、init_fooは、
> 
> (1) initializeの中で@fooの初期化時に呼ばれて実行されてい
> る、
> (2) a.fooが呼ばれたときに実行される、
> 
> のどちらでしょうか? あるいは、まったく別でしょうか?

(1) です。ちゃんと言えば initialize で init_foo が呼ばれ,その戻
り値をもって @foo が初期化されます。

> Java(の知識もあいまいですが)では、init_fooはインスタンス
> メソッドであり、クラスAのコンストラクタ中では呼べないと
> 思いました。

Java でもコンストラクタ中にインスタンスメソッドは呼べたはずです
が… "C++" の「コンストラクタでは仮想関数を呼べない」と勘違いし
ていませんか?


—[ Tietew ]——————————————————————————
 メ : tietew@tietew.net / tietew@raug.net / tietew@masuclub.net
ホペ: http://www.tietew.net/     Tietew Windows Lab.
      http://www.masuclub.net/   鱒倶楽部
指紋: 26CB 71BB B595 09C4 0153  81C4 773C 963A D51B 8CAA


In This Thread