线程的实现方式——多线程技术二

本文主要介绍关于线程如何实现的方式,主要介绍的是在jdk1.5之前的两种方式:分别是继承Thread类与实现Runnable接口。

继承Thread类:

第一种:

new Thread(){}.start();

这表示调用Thread子类对象的run方法,new Thread(){}表示一个Thread的匿名子类的实例对象,子类加上run方法后的代码如下:

new Thread(){

   public void run(){

   }

}.start();

第二种:

new Thread(newRunnable(){}).start();

这表示调用Thread对象接受的Runnable对象的run方法,new Runnable(){}表示一个Runnable的匿名子类的实例对象,runnable的子类加上run方法后的代码如下:

new Thread(newRunnable(){

               public void run(){

               }    

        }

   ).start();


具体代码测试实现:

创建两个线程,一个继承Thread类。一个实现Runnable。

package MultiThreed;

public class NumberThread extends Thread{

	public NumberThread(String string) {
		super(string);
	}
	
	@Override
	public void run() {
		for (int i = 1; i < 5000; i++) {
			System.out.println(this.getName()+":"+i);
		}
		
		
	}
}
package MultiThreed;


public class NumberThread2 implements Runnable{


	private	String name;
	public NumberThread2(String name) {
		this.name=name;
				
	}
	
	@Override
	public void run() {
		for (int i = 1; i < 5000; i++) {
			System.out.println(this.name+":"+i);
		}
		
		
	}
}

主方法:

package MultiThreed;

public class Main {

	public static void main(String[] args) {
		NumberThread t1=new NumberThread("T1");
		NumberThread2 t2=new NumberThread2("T2");
		t1.start();
		new Thread(t2).start();//还是需要调用Thread的start方法启动
		
	}
}






   



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小明爱吃火锅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值