Java 线程的简单使用 快速上手

可能会有很多人觉得Java线程不容易理解,但通过循序渐进的方法,理解Java线程就会变得很简单!

一、基本知识

Java的线程相当于一个单独的任务,这个任务由 run() 方法来实现,线程的实现,就是 run() 方法的实现。

run() 方法的实现,常用的有两种:

1、继承 Thread 类,因为 Thread 类里有 run() 方法。
2、实现 Runnable 接口,因为 Runnable 接口里有 run() 方法。

为了程序的灵活性,常常使用第 2 种方法。
(注:在Java中,一个类只可以继承一个类,但却可以实现多个接口)

方法1–继承Thread类:

class MyThread extends Thread{
	@Override
            public void run() {
               //要完成的任务
            }
}

方法2–实现 Runnable 接口:

class MyRunnable implements Runnable{
	@Override
            public void run() {
               //要完成的任务
            }
}

二、线程简单使用

线程使用原理:设置一个任务,将这个任务分配给一个线程处理。

1、空任务线程

	Thread thread = new Thread();	//创建一个线程类
	thread.start();					//启动这个线程

在该段代码中我们创建了一个线程,却没有给线程 thread 分配任务( 没有实现run()方法 )。下面我们来分配这个任务

2、有任务的线程
方法一:

扫描二维码关注公众号,回复: 11538277 查看本文章
	MyThread thread = new MyThread();
	thread.start();

在该方法中,MyThread 既是一个线程也被分配了一个任务,所以,可以直接调用 start() 方法启动线程。

方法二:

	MyRunnable myrunnable = new MyRunnable();	
	Thread thread = new Thread(myrunnable);
	thread.start();

在该方法中,任务在 MyRunnable 中实现了,所以将 MyRunnable 作为参数传递给Thread,以此完成任务分配。

两种方法本质上都是实现 run() 方法,任务才是线程的核心

三、如何方便的使用线程

有时我们不想创建一个新类来用于实现线程,下面的方法可以满足我们的需求。
我们可以这样:

	Thread thread = new Thread(new Runnable() {
            @Override
            public void run() {
               //要完成的任务
            }
        });
        thread.start();

也可以这样

	new Thread(new Runnable() {
            @Override
            public void run() {
               //要完成的任务
            }
        }).start();

还可以这样:

	new Thread(()->{
          //要完成的任务 
        }).start();

当run() 方法完成后线程就会自动终止,也可以用其他方法终止线程,但都不太安全。

这些就是线程的简单使用了,如果还有其他的问题就继续找资料吧~

猜你喜欢

转载自blog.csdn.net/qq_44829047/article/details/107732736