设计4个线程对象,两个执行加运算,两个执行减运算。

首先创建执行加运算的线程


class Add implements Runnable{
    private int sum = 0;
    @Override
    public void run() {
        for(int i=0; i<10; i++){
            sum += i;
        }
        System.out.println("相加的结果: " + this.sum);
    }
}

然后创建执行减运算的线程


class Subtraction implements Runnable{
    private int sum = 100;
    @Override
    public void run() {
        for(int i=10; i>0; i--){
            sum -= i;
        }
        System.out.println("相减后的结果: " + this.sum);
    }
}

主函数

public class Question {
    public static void main(String[] args) {
        Add a = new Add();
        Thread t1 = new Thread(a);
        Thread t2 = new Thread(a);
        t1.start();
        t2.start();
        Subtraction s = new Subtraction();
        Thread t3 = new Thread(s);
        Thread t4 = new Thread(s);
        t3.start();
        t4.start();
    }
}

创建线程用的是实现Runnable接口,实现Runnable比起直接继承Thread类,好处如下:

  • 适合多个相同程序代码的线程去处理统一资源的情况(资源可分享);
  • 可以避免由于java单继承所带来的的局限;
  • 增强了程序的健壮性,代码能够被多个线程共享,代码和数据是独立的。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值