`

java多线程实现方式

 
阅读更多

第一种方式 继承Thread

public class ThreadTest extends Thread {
	
	private String name; //定义一个属性
	
	public ThreadTest(String name){//构造方法
		this.name=name;
		
	}
	
	public void run(){//重写run()方法
		System.out.println(this.name +"_______"+ new Date());
		
	}
	

}

public class ThreadTest3 {
	public static void main(String[] args) {
		ThreadTest mt1=new ThreadTest("线程1");
		ThreadTest mt2=new ThreadTest("线程2");
		ThreadTest mt3=new ThreadTest("线程3");
		//启动
		mt1.start();
		mt3.start();
		mt2.start();
	}

}

 

第二种实现方式实现Runnable接口

public class ThreadTest2 implements Runnable {
	private String name;
	public ThreadTest2(String name){
		this.name=name;
	}

	@Override
	public void run() {
		System.out.println(this.name+"________"+new Date());
	}

}


public class ThreadTest4 {

	public static void main(String[] args) {
		
		ThreadTest2 mt=new ThreadTest2("A");
		ThreadTest2 mt1=new ThreadTest2("B");
		ThreadTest2 mt2=new ThreadTest2("C");
	    
		Thread thread = new Thread(mt);
		Thread thread2 = new Thread(mt1);
		Thread thread3 = new Thread(mt2);
		
		thread.start();
		thread2.start();
		thread3.start();
	}
}

 

  

 

 

 第三种方式 实现Callable(有返回值)

 

 

public class CallableTest implements Callable<String> {
    private String name;
    public CallableTest(String name) {
		this.name=name;
	}
    
	@Override
	public String call() throws Exception {
		return "你好"+"----------"+this.name;
	}

    

}

public class CallableMain {
	public static void main(String[] args) {

		CallableTest mt1=new CallableTest("A");
		CallableTest mt2=new CallableTest("B");
		CallableTest mt3=new CallableTest("C"); 

		FutureTask<String> futureTask = new FutureTask<String>(mt1);
		FutureTask<String> futureTask2 = new FutureTask<String>(mt2);
		FutureTask<String> futureTask3 = new FutureTask<String>(mt3);
	
		new Thread(futureTask).start(); 
		new Thread(futureTask2).start(); 
		new Thread(futureTask3).start(); 
		
		try {
			System.out.println(futureTask.get());
			System.out.println(futureTask2.get());
			System.out.println(futureTask3.get());
		
		} catch (Exception e) {
		
		}
		
	}


}

 

 

 

 

 

 

 

 

 

 

 

 

  • 大小: 17.9 KB
  • 大小: 15.9 KB
  • 大小: 11.3 KB
分享到:
评论

相关推荐

    Java多线程实现异步调用实例

    总之,Java多线程和异步调用是构建高效、响应迅速的应用程序的关键技术。通过合理利用这些工具和机制,开发者可以编写出能够充分利用多核处理器优势的代码,从而提高软件性能。在实际应用中,理解并熟练掌握这些概念...

    java多线程实现大批量数据导入源码

    本项目以"java多线程实现大批量数据导入源码"为题,旨在通过多线程策略将大量数据切分,并进行并行处理,以提高数据处理速度。 首先,我们需要理解Java中的线程机制。Java通过`Thread`类来创建和管理线程。每个线程...

    java多线程实现TCP连接UDP聊天的聊天程序

    java多线程实现TCP连接UDP聊天的聊天程序

    java多线程实现动画功能

    java一些简单的多线程用法,适合初学者

    Java多线程知识点总结

    Java多线程是Java编程语言中一个非常重要的概念,它允许开发者在一个程序中创建多个执行线程并行运行,以提高程序的执行效率和响应速度。在Java中,线程的生命周期包含五个基本状态,分别是新建状态(New)、就绪...

    java一个多线程的经典例子

    ### Java多线程实现方式 在Java中,实现多线程有两种主要的方法:通过继承`Thread`类或者实现`Runnable`接口。 #### 继承Thread类 在本示例中,`ThreadUseExtends`类通过继承`Thread`类来创建一个新的线程。继承`...

    java多线程进度条

    本主题将深入探讨如何在Java多线程环境下实现进度条功能。 首先,理解Java多线程的基本概念至关重要。Java通过Thread类和Runnable接口来支持多线程。创建一个新线程通常有两种方式:继承Thread类并重写run()方法,...

    java多线程模拟队列实现排队叫号

    总的来说,通过Java多线程和队列数据结构,我们可以有效地模拟排队叫号系统。这种模拟有助于理解和实践并发编程,同时也为我们解决实际问题提供了思路。在这个过程中,我们学习了线程同步、队列操作以及如何在Java中...

    java多线程读取文件

    Java多线程读大文件 java多线程写文件:多线程往队列中写入数据

    java 多线程操作数据库

    本文将基于一个具体的Java多线程操作数据库的应用程序,深入探讨其背后的原理、实现细节以及潜在的挑战。 #### 核心知识点: 1. **多线程基础**:多线程是Java编程中的一个重要概念,允许程序同时执行多个任务。在...

    Java多线程Executors批量执行数据实现限流

    Java多线程实现数据切割批量执行,实现限流操作。 java线程池Executors实现数据批量操作。 批量异步Executors处理数据,实现限流操作,QPS限流。 线程池调用第三方接口限流实现逻辑。 案例适合: 1.批量处理大数据。...

    Java多线程实现生产者消费者

    在Java编程中,多线程是并发编程的重要组成部分,它允许程序同时执行多个任务,从而提高了系统的效率和响应性。本示例中的“生产者-消费者”模型是一种经典的多线程问题,它模拟了实际生产环境中的资源分配与消耗...

    多线程java买票系统

    2. **Java多线程实现方式** - 继承`Thread`类:创建一个新的类,继承自`Thread`,重写`run()`方法,然后创建该类的实例并调用`start()`方法启动线程。 - 实现`Runnable`接口:创建一个新的类实现`Runnable`接口,...

    java实现多线程文件传输

    在Java编程语言中,实现多线程文件传输是一种优化程序性能、提高系统资源...在提供的`java多线程文件传输`压缩包中,可能包含了实现这些概念的示例代码,通过分析和学习,可以更好地理解多线程文件传输的原理和实践。

    java多线程的讲解和实战

    Java多线程是Java编程中的重要概念,尤其在如今的多核处理器环境下,理解并熟练掌握多线程技术对于提高程序性能和响应速度至关重要。本资料详细讲解了Java多线程的原理,并提供了丰富的实战代码,非常适合Java初学者...

    Java多线程干货系列(1)Java多线程基础编程开发技术

    2. **Java多线程实现方式**: - **继承Thread类**:创建一个新的类,该类继承自Thread类,并重写其run()方法,然后创建该类的实例并调用start()方法启动线程。 - **实现Runnable接口**:创建一个新的类实现...

    java多线程进度条实例

    本实例将探讨如何利用Java实现一个具有进度条显示功能的多线程应用。进度条通常用于可视化地表示某个任务的完成程度,这对于长时间运行的操作如文件下载、上传或大型计算来说非常有用。 首先,我们要理解Java中的...

    java多线程Demo

    Java多线程是Java编程中的一个重要概念,它允许程序同时执行多个任务,提高了程序的效率和响应速度。在Java中,实现多线程有两种主要方式:继承Thread类和实现Runnable接口。 1. 继承Thread类: 当我们创建一个新...

    多线程两种实现方式Java

    总结,理解并熟练掌握Java中的多线程实现方式是提升程序性能和编写高效并发代码的基础。无论你是通过继承`Thread`还是实现`Runnable`,都需要对线程同步和通信有深入的理解,以便在实际项目中解决并发问题。通过实践...

    java多线程经典案例

    Java多线程是Java编程中的重要概念,它允许程序同时执行多个任务,极大地提升了程序的效率和性能。在Java中,实现多线程有两种主要方式:通过实现Runnable接口或者继承Thread类。本案例将深入探讨Java多线程中的关键...

Global site tag (gtag.js) - Google Analytics