Java多线程的创建

时间:2019-12-26 22:02:17   收藏:0   阅读:81

例如:

package 多线程;
/*
*1.创建两个线程分别完成100以内奇数偶数的输出
*/

public class CreateThread {
    public static void main(String[] args){
        Test1 t1 = new Test1();
        Test2 t2 = new Test2();
        t1.start();
        t2.start();
    }
}
//输出偶数
class Test1 extends Thread {
    @Override
    public void run() {
        for (int i = 0; i < 50; i++) {
            if (i % 2 == 0) {
                System.out.println("线程一输出偶数:"+i);
            }
        }
    }
}

//输出奇数
class Test2 extends Thread{
    @Override
    public void run() {
        for(int i =0; i < 50;i++){
            if (i %2 != 0) {
                System.out.println("线程二输出奇数:"+i);
            }
        }
    }
}
线程一输出偶数:0
线程一输出偶数:2
线程一输出偶数:4
线程二输出奇数:1
线程二输出奇数:3
线程二输出奇数:5
    ....
线程二输出奇数:47
线程二输出奇数:49
线程一输出偶数:6
线程一输出偶数:8

输出结果省略了一部分,可以看出来,两个线程的执行是交替的,所以奇数和偶数也是交替输出.



例如:

package 多线程;

public class CreateThread2 {
    public static void main(String[] args){
       Test3 t3 = new Test3();
       Test4 t4 = new Test4();

        //多态性
       Thread t = new Thread(t3);
       Thread tt = new Thread(t4);
       t.start();
       tt.start();
    }
}
//输出偶数
class Test3 implements Runnable{
    @Override
    public void run() {
        for (int i = 0; i < 50; i++) {
            if (i % 2 == 0) {
                System.out.println("线程一输出偶数:"+i);
            }
        }
    }
}
//输出奇数
class Test4 implements Runnable{
    @Override
    public void run() {
        for (int i = 0; i < 50; i++) {
            if (i % 2 != 0) {
                System.out.println("线程二输出奇数:"+i);
            }
        }
    }
}
//结果和上一个类似

原文:https://www.cnblogs.com/coding-996/p/12104570.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!