なぜ Handler が Runnable のインスタンスを取得する必要があるのか 疑問に思っていましたか? 結局、ハンドラーの目的は、あるスレッドから別のスレッドに作業を配置することです。これを達成するためにランナブルであるサードスレッドを使用する目的は何ですか?
敬具、
なぜ Handler が Runnable のインスタンスを取得する必要があるのか 疑問に思っていましたか? 結局、ハンドラーの目的は、あるスレッドから別のスレッドに作業を配置することです。これを達成するためにランナブルであるサードスレッドを使用する目的は何ですか?
敬具、
私はあなたの混乱を理解していると思います:あなたはRunnable
オブジェクト自体が別ののインスタンスであると考えていますThread
。そうではない。簡単に言うと、インターフェイスを実装することで、Runnable
インターフェイスThread
を渡して、インターフェイスを呼び出し.run()
て内部のコードを実行できることを確認することができます。
Runnable
オブジェクトをに送信するとHandler
、それは'sRunnable
で実行されます。Handler
Thread
簡単に言えば、このように説明するだけで十分でしょう。Handler
それ自体で実行する作業をThread
に提供する場合は、オブジェクト内にそのコードを提供する必要があります。ここで、に提供するオブジェクトは、Handler
ある種の実装を行う必要があります。これにより、オブジェクトが必要な処理を実行するinterface
ためHandler
に、そのオブジェクトで呼び出すメソッドを知ることができます。基本的には、それがインターフェースの機能です。実装するオブジェクトがメソッドを実装するRunnable
ことは必須です。Runnable
run()