JAVA多线程初探:三个线程下载B站首页图片
2020-04-20 14:20
260 查看
import org.apache.commons.io.FileUtils; import java.io.File; import java.io.IOException; import java.net.URL; //练习Thread,实现多线程下载图片 public class TestThread02 extends Thread{ private String url; //网络图片地址 private String name;//文件名 public TestThread02(String url, String name) { this.url = url; this.name = name; } //下载体 @Override public void run() { WebDownloader webDownloader = new WebDownloader(); webDownloader.downloader(url,name); System.out.println("下载文件的文件名为"+ name); } public static void main(String[] args) { TestThread02 t1 = new TestThread02("https://i0.hdslb.com/bfs/archive/d84bfd5d474b3b9170b" + "060f367db162c722cb654.jpg@1100w_484h_1c_100q.jpg","1.jpg"); TestThread02 t2 = new TestThread02("https://i0.hdslb.com/bfs/sycp/creative_img/202004/f2" + "338405fba5c61cfb130794a1501b7c.jpg@1100w_484h_1c_100q.jpg","2.jpg"); TestThread02 t3 = new TestThread02("https://i0.hdslb.com/bfs/archive/d3cf0c917f7547bd1f573c" + "d95a79384e5fcd6992.png@1100w_484h_1c_100q.png","3.jpg"); t1.start(); t2.start(); t3.start(); } } //下载器 class WebDownloader{ //下载方法 public void downloader(String url,String name){ try { FileUtils .copyURLToFile(new URL(url),new File(name)); } catch (IOException e) { System.out.println("io异常,downloader方法出现问题!"); } } }
- 下载方法的具体实现封装在WebDownloader类中
- run方法中实例化WebDownloader类并调用downloader方法
- 主方法(主线程)中用来创建线程类并调用start()方法开启
- 注意要引入commons.io这个jar包,需要在Apache官网下载
结果如下
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- iOS 开发 多线程详解之NSThread异步线程下载网络图片
- Java多线程:用三个线程控制循环输出10次ABC
- Java实现多线程经典问题:使用三个线程实现输出ABCABC循环
- Java多线程:用三个线程控制循环输出10次ABC
- 第03天多线程网络:(02):多图下载程序开子线程下载图片
- JAVA基础初探(十四)多线程(线程与进程概述、线程的实现、状态、常用方法、优先级、生命周期)
- [Java多线程]ABC三个线程顺序输出的问题
- 迅雷笔试题 (JAVA多线程)启动三个线程,分别打印A B C,现在写一个程序 循环打印ABCABCABC
- java 多线程下载图片
- Java 网络编程——多线程下载图片
- java多线程面试题:三个线程顺序打印ABC,重复10次
- Rx_java(4)Rx_java2中的线程控制 从网络下载图片并显示在界面小案例
- Java多线程:用三个线程控制循环输出10次ABC
- 多线程爬虫Java调用wget下载文件,独立线程读取输出缓冲区
- java多线程下载美女图片
- java多线程下载网络图片
- ios NSThread 线程锁,多线程下载图片
- iOS学习笔记-104.多线程03——线程间通信图片下载与时间计算
- Java网络编程之单线程下载文件---多线程下载单个文件
- Java多线程:用三个线程控制循环输出10次ABC