這是從Android開發網站一個示例代碼:這也是一個匿名派生類的例子嗎? (Java基礎)
public void onClick(View v) {
new DownloadImageTask().execute("http://example.com/image.png");
}
private class DownloadImageTask extends AsyncTask<String, Void, Bitmap> {
/** The system calls this to perform work in a worker thread and
* delivers it the parameters given to AsyncTask.execute() */
protected Bitmap doInBackground(String... urls) {
return loadImageFromNetwork(urls[0]);
}
/** The system calls this to perform work in the UI thread and delivers
* the result from doInBackground() */
protected void onPostExecute(Bitmap result) {
mImageView.setImageBitmap(result);
}
}
在此,在線路new DownloadImageTask().execute("http://example.com/image.png");
,並new DownloadImageTask()
創建DownloadImageTask
類的對象,或者它創建擴展DownloadImageTask
一個annonymous類?
對於比較:
在該代碼中,
public void onClick(View v) {
new Thread(new Runnable() {
public void run() {
Bitmap b = loadImageFromNetwork("http://example.com/image.png");
mImageView.setImageBitmap(b);
}
}).start();
}
從Thread類派生的類的對象已取得和實例化,但不保存對它的引用(這使得它,以便它以後不能再使用),而不是Thread類型的對象。前代碼中的情況如何?