1>>>>>>>>继承Thread
第一步:继承 Thread 类
第二步:重写 run() 方法
第三步:创建对象,调用 start 方法,启动线程。
package com.wbs.Thread; public class MyThread extends Thread { @Override public void run() { for (int i = 0; i < 10; i++) { System.out.println(Thread.currentThread().getName()+" "+"第"+i+"次执行"); } } public static void main(String[] args) { //创建线程 MyThread th=new MyThread(); th.start(); } }
多线程
package com.wbs.Thread; public class MyThread extends Thread { @Override public void run() { for (int i = 0; i < 4; i++) { System.out.println(Thread.currentThread().getName()+" "+"第"+i+"次执行"); } } public static void main(String[] args) { //创建线程 MyThread th1=new MyThread(); MyThread th2=new MyThread(); MyThread th3=new MyThread(); th1.start(); th2.start(); th3.start(); } }
两次的结果进行做对比。
2>>>>>>>>>实现Runnable接口
第一步:实现 Runnable 接口
第二步:重写 run 方法
第三步:创建一个 Thread 对象
第四步:通过 Thread 对象,调用 Thread 类中的 start() 方法启动线程
package com.wbs.Thread; public class MyThread1 implements Runnable { @Override public void run() { for (int i = 0; i < 4; i++) { System.out.println(Thread.currentThread().getName()+" "+"第"+i+"次执行"); } } public static void main(String[] args) { //创建线程 MyThread th1=new MyThread(); MyThread th2=new MyThread(); MyThread th3=new MyThread(); th1.start(); th2.start(); th3.start(); } }
注意:在java开发的过程中一般是实现Runnable接口,因为java是单继承的,有时候继承了一些类之后,不能再继承,其实Thread类也是实现了Runnable接口