这节课我们来讲讲线程的使用
首先来讲讲怎么创建一个线程,我们只有先创建线程然后才能谈使用对吧。
创建线程的方式一: 继承Thread类
Demo 01:
public class ThreadTeach { public static void main(String[] args) { //创建线程就是new一个线程类对象 MyThread myThread = new MyThread("我自己的线程"); //注意,启动线程调用的是start()方法,不是run()方法 //请不要闲的蛋疼重写Thread类的start()方法,否则线程会启动不了 myThread.start(); } } /** * 使用进程的方式一: 继承java.lang.Thread类 */ class MyThread extends Thread{ //最好把父类的构造器都重写下 //不过我习惯用到那个构造器就重写哪个构造器 public MyThread() { super(); } //这个构造器的作用就是给这个线程起个名 public MyThread(String name) { super(name); } /* 这个线程能做什么事完全由这个线程类的run()方法决定 因此,如果我们想让这个线程类做我们想做的事,必须重写父类的run()方法 */ /** * 本方法是重写的父类Thread类的方法,用于让这个线程执行我们想让它做的事 */ @Override public void run() { //获取本线程名称的方法: Thread.currentThread().getName() System.out.println(Thread.currentThread().getName()); } }
创建线程的方式二: 实现Runnable接口
Demo 02:
public class ThreadTeach { public static void main(String[] args) { /** * 通过实现Runnable创建线程的方法如下: * 1. 创建一个Runnable对象 * 2. 创建一个Thread对象,构造器里传入刚创建的Runnable对象 * 3. 调用start()方法,启动线程 */ Runnable runnable = new MyRunnable(); Thread thread = new Thread(runnable); thread.start(); } } / /** * 创建线程的方式二: 实现java.lang.Runnable接口 * 可以看到Runnable接口就一个抽象方法run()方法,必须重写此方法 */ class MyRunnable implements Runnable{ @Override public void run() { //算了,下节课演示多线程吧,这节课主要讲怎么用 System.out.println("我是通过实现Runnable接口创建的线程"); } }