1-多线程的两种实现方式
Posted kesheng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1-多线程的两种实现方式相关的知识,希望对你有一定的参考价值。
package org.ks.多线程; /* * 多线程(多线程程序实现的方式1)(掌握) * 1.继承Thread * 定义类继承Thread * 重写run方法 * 把新线程要做的事写在run方法中 * 创建线程对象 * 开启新线程, 内部会自动执行run方法 */ //现象: bb和ksdsb交替执行 public class Demo2_Thread_realize { public static void main(String[] args) { //方式一 /* MyThread mt = new MyThread(); //创建Thread类的子类对象 mt.start(); //5.开启线程 */ //方法二 myRunnable mr = new myRunnable(); //4.创建Runnable子类对象 //Runnable对象没有start方法,所以将Runnable对象当做参数,通过Thread类的构造方法Thread(Runnable target)创建一个Thread类的对象,然后调用start方法 Thread t = new Thread(mr); //5.将Runnable子类对象当做参数传递给Thread类的构造函数:Runnable target = mr; t.start(); //6.开启线程 for(int i=0;i<1000;i++) //3.将要执行的代码写在run方法中 { System.out.println("bb"); } } } class MyThread extends Thread{ //1.继承 Thread 类 public void run() //2.重写run方法 { for(int i=0;i<1000;i++) //3.将要执行的代码写在run方法中 { System.out.println("ksdsb"); } } } /* * 多线程(多线程程序实现的方式2)(掌握) * 2.实现Runnable * 定义类实现Runnable接口 * 实现run方法 * 把新线程要做的事写在run方法中 * 创建自定义的Runnable的子类对象 * 创建Thread对象, 传入Runnable * 调用start()开启新线程, 内部会自动调用Runnable的run()方法 */ class myRunnable implements Runnable{ //1.定义一个类实现Runnable @Override //2.重写run方法 public void run() { //3.将新线程要做的事写在run方法中 } }
以上是关于1-多线程的两种实现方式的主要内容,如果未能解决你的问题,请参考以下文章