【Java-42】基于Java的线程概念及线程创建的两种主要方式

1.什么是线程

程序、进程、线程,程序就是静止的代码,进程就是运行起来的程序,每个进程都会占用CPU资源,而线程是基于进程的,是进程中的再分类,也就是说一个进程中有好多线程,这些线程共用一个资源,搞这么多线程目的是提高程序运行效率同时占用资源少,进程就如同一个大马路,而现在呢,我们把这条大马路划分为很多车道,这样一条大马路上就有好几条路线走了,那么这每一条车道路线就是线程

2.Java创建线程两种主要方式

1) 继承Thread,重写run方法,创建子类对象,子类对象.start
2) 通过静态代理的方式,1.创建真实角色重写run,创建代理角色,代理角色.start

3.代码示例

rab、dog是通过继承Thread,重写run方法,创建子类对象,子类对象.start,cat是通过静态代理的方式,1.创建真实角色重写run,创建代理角色,代理角色.start

Class1:兔子、狗、猫

package My_Thread;

public class rabit  extends Thread{

	@Override
	public void run() {
		System.out.println("小兔兔");
		System.out.println("小兔兔2");
		System.out.println("小兔兔3");
	}
	

}

class dog extends Thread{

	@Override
	public void run() {
		System.out.println("小狗狗");
		System.out.println("小狗狗3");
		System.out.println("小狗狗4");
		System.out.println("小狗狗2324");
	}
}

//真实角色
class Cat implements Runnable{

	@Override
	public void run() {
		System.out.println("小猫咪");
		System.out.println("小猫咪3");
		System.out.println("小猫咪4");
	}
}

Class2:调用创建启动线程

package My_Thread;

/**
 * 创建线程两种主要方式
 * 以下rab、dog是通过继承Thread,重写run方法,创建子类对象,子类对象.start
 * cat是通过静态代理的方式,1.创建真实角色重写run,创建代理角色,代理角色。start
 * 
 * @author My_2
 *
 */
public class test {
	public static void main(String[] args) {
		//继承Thread,重写run方法方法
		rabit rab=new rabit();
		dog dog=new dog();
		rab.start();
		dog.start();
		
		//静态代理的方式
		Cat cat=new Cat();
		Thread cat21=new Thread(cat);
		cat21.start();
		for(int i=0;i<=10;i++){
			System.out.println(i);
		}
	}

}

猜你喜欢

转载自blog.csdn.net/weixin_42034217/article/details/86661320