java 启动线程三种方式

原创 2012年01月20日 16:32:01

1.继承Thread

public class java_thread extends Thread{
	public static void main(String args[])
	{
		(new java_thread()).run();
		System.out.println("main thread run ");
	}
	public synchronized  void run()
	{
		System.out.println("sub thread run ");
	}

}

2.实现Runnable接口

public class java_thread implements Runnable{
	public static void main(String args[])
	{
		(new Thread(new java_thread())).start();
		System.out.println("main thread run ");
	}
	public void run()
	{
		System.out.println("sub thread run ");
	}

}

3.直接在函数体使用

void java_thread()
{

     Thread t = new Thread(new Runnable(){
            public void run(){
            mSoundPoolMap.put(index, mSoundPool.load(filePath, index));
            getThis().LoadMediaComplete();
            }});
		t.start();
}

4.比较:

实现Runnable接口优势:

1)适合多个相同的程序代码的线程去处理同一个资源

2)可以避免java中的单继承的限制

3)增加程序的健壮性,代码可以被多个线程共享,代码和数据独立。

继承Thread类优势:

1)可以将线程类抽象出来,当需要使用抽象工厂模式设计时。

2)多线程同步

在函数体使用优势

1)无需继承thread或者实现Runnable,缩小作用域。


java创建线程的三种方式及其对比

Java中创建线程主要有三种方式: 一、继承Thread类创建线程类 (1)定义Thread类的子类,并重写该类的run方法,该run方法的方法体就代表了线程要完成的任务。因此把run()方法称为执行...
  • longshengguoji
  • longshengguoji
  • 2014-11-14 22:14:15
  • 97105

JAVA多线程实现的三种方式

JAVA多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没...
  • aboy123
  • aboy123
  • 2014-07-31 18:34:17
  • 458457

开启子线程的三种方式

package com.you;import java.util.Date;/** * 多线程的实现方式 * 1、继承Thread类 * 2、实现Runnable接口 * @autho...
  • u014756517
  • u014756517
  • 2016-07-20 14:04:44
  • 5386

创建线程的三种方式

一、继承Thread类+重写run()方法 启动:创建子类对象+对象.start() 二、实现Runnable接口+重写run方法 启动:使用静态代理 1)、创建真实角色 2)、创建代理角色...
  • scgaliguodong123_
  • scgaliguodong123_
  • 2015-05-27 17:13:11
  • 6902

创建和启动线程的两种方式

方式1:继承Thread类 步骤: 1):定义一个类A继承于java.lang.Thread类. 2):在A类中覆盖Thread类中的run方法. 3):我们在run方法中编写需要执行的操作:...
  • caidie_huang
  • caidie_huang
  • 2016-10-07 10:52:48
  • 15707

开启线程的几种方法使用

第一,使用Handler 以下是一个对话框不断增加的过程 public class MainActivity extends Activity { ProgressBar pb1, pb2; ...
  • qq_31307919
  • qq_31307919
  • 2016-07-05 17:43:24
  • 3453

Java中启动线程start和run方法

一、区别Java中启动线程有两种方法,继承Thread类和实现Runnable接口,由于Java无法实现多重继承,所以一般通过实现Runnable接口来创建线程。但是无论哪种方法都可以通过start(...
  • lai_li
  • lai_li
  • 2016-11-07 20:17:14
  • 9810

启动一个线程是用run()还是start()

1.start()方法来启动线程,真正实现了多线程运行,这时无需等待run方法体代码执行完毕而直接继续执行下面的代码: 通过调用Thread类的start()方法来启动一个线程,这时此线程是处于就绪...
  • BornLiLi
  • BornLiLi
  • 2017-02-19 12:09:23
  • 1625

线程的启动方法

启动一个线程是用run()还是start()?   2011-06-08 11:23:44|  分类: java|字号 订阅 启动线程肯定要用start()方法...
  • zndxlxm
  • zndxlxm
  • 2012-06-16 23:44:33
  • 14368

java开启新线程的三种方法

见:http://blog.csdn.net/caidie_huang/article/details/52748460 见:http://blog.csdn.net/typename/article...
  • u011314442
  • u011314442
  • 2017-02-28 09:12:51
  • 5424
收藏助手
不良信息举报
您举报文章:java 启动线程三种方式
举报原因:
原因补充:

(最多只允许输入30个字)