電子書籍の厳選無料作品が豊富!

アプレット(AWT)を勉強している初心者です。

startメソッドというのはクラスの中に実装したら自動的に実行されるものなのでしょうか?

あるスレッドのクラスをインスタンス化して、そのオブジェクトの中のstart()を実行することによって、スレッドが実行される、と思っているのですが、裸でstartメソッドが実装されているようなんです。

ソースは下記のサイトの3-3の落ちモノゲームです。この本を使って勉強しています。

http://www.muse.dti.ne.jp/~yoji/book/book001.html

よろしくお願いします。

A 回答 (3件)

このクラスで定義しているstartメソッドは、java.applet.Appletから継承したものです。


これはブラウザやAppletViewerが、アプレットを開始する必要があるときに自動的に呼ばれます。

Threadクラスのstartメソッドについては、他のかたが書かれている通りです。
startメソッドの呼び出しからはすぐに戻りますが、Threadクラスのコンストラクタで指定したクラスの、Runnableインターフェースから継承したrunメソッドが並行して実行されることになります。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

お礼日時:2007/06/09 02:55

Threadクラスのstartメソッドを呼ぶと、runメソッドを自動的に呼んでくれます。




という意味がわかりませんが、
Threadクラスにstartメソッドに何も記述が無い
という意味でしたら、nativeメソッドだからです。
詳しくは「nativeメソッド」を調べてください。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

お礼日時:2007/06/09 02:55

その書籍は持ってないので憶測ですが、


startメソッドというのは、おそらくRunnableインタフェースもしくは、Threadクラスのstartメソッドのことですね?
startメソッドが実行されるのは、Threadのrunメソッドを呼び出すと内部で実行してくれます。
単純にstartメソッドを定期すればいいだけではなく、Runnableインタフェースを実装するか、Threadクラスを継承したクラスにしなければいけません。
あとは、実装したThreadクラスのrunメソッドを呼べば、自動的にstartメソッドも実行してくれます。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

お礼日時:2007/06/09 02:54

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!