多线程下载图片(代码只用了一个线程)

多线程下载图片:


package com.cheng.thread;

import org.apache.commons.io.FileUtils;

import java.io.File;
import java.io.IOException;
import java.net.URL;

public class Demo02 extends Thread {

   private String url;//网络图片地址
   private String name;//保存的文件名

   //构造器
   public Demo02(String url,String name){//给url和name传参数
       this.url = url;
       this.name = name;
  }

   @Override
   public void run() {//重写run方法
       WebDownloader webDownloader = new WebDownloader();
       webDownloader.downloader(url,name);
       System.out.println("下载的文件名为"+name);
  }

   public static void main(String[] args) {
       Demo02 d2 = new Demo02("https://pics6.baidu.com/feed/a8014c086e061d95cd2f093cb0ce89d762d9ca0e.jpeg?token=f06261ea169217618d665fd6e52df6f1","鬼刀");
       d2.start();
  }


}

//下载器
class WebDownloader{
   //下载方法
   public void downloader(String url,String name){
       try {//捕获异常
           FileUtils.copyURLToFile(new URL(url),new File(name));//下载保存
      } catch (IOException e) {
           e.printStackTrace();
           System.out.println("downloader出错了");//报错
      }
  }
}

 

 

posted @ 2021-07-08 09:44  Dudo1  阅读(113)  评论(0)    收藏  举报