Java入門・初心者質問スレ [無断転載禁止]©5ch.io
■ このスレッドは過去ログ倉庫に格納されています
0101デフォルトの名無しさん
2016/06/14(火) 06:50:12.56ID:OkjQ5JpNオブジェクトの部分で躓いてるようなので、スレッド抜きに考えてみる
Readlmp reader = new Readlmp();
Writerlmp writer = new Writerlmp();
reader.run();
writer.setText((reader.getText());
writer.run();
main()メソッドの一部抜粋で、スレッド抜きにするとこんな感じ
インスタンス化すると、ヒープ領域にclassのコピーが作られる(staticメンバ以外)
そのコピー(reader,writerインスタンス)のrun()メソッドが実行される
>例題ではスレッドでの呼び出しをした時、run()メソッドの中身を実行するのだけど、外で定義しているのもあるから
>run()の書いてあるclass全部を読み込んでいる という理解でいいですか?
スレッドのインスタンスを生成するときに、reader,writerを引数に渡している
つまり、あらかじめ作ったclass全部のコピーを渡しているということ(正確にはコピーの参照先)
それでスレッドは、reader,writerインスタンスのrun()メソッドを実行している
スレッドの生成をしたときにclass全部を詠み込むのか?
この質問だと、順序が逆で
class全部を詠み込んだもの(インスタンス)を使って、スレッドを生成をしている、ということ
6章までこのペースで理解できてるって、かなり早い
実践編の方は、オブジェクトを使いこなす方法がかかれているから、この辺の事も理解が深まるかもしれない
■ このスレッドは過去ログ倉庫に格納されています