package project11;
public class AddThread {
public static void main(String[] args) {
int sum;
// 创建线程类
Thread1 t1 = new Thread1();
Thread2 t2 = new Thread2();
// 创建线程
Thread t1s = new Thread(t1);
Thread t2s = new Thread(t2);
// 给线程命名
t1s.setName("Thread1");
t2s.setName("Thread2");
t1s.start();
try {
t1s.join();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
t2s.start();
try {
t2s.join();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
sum = t1.get() + t2.get();
System.out.println("最终结果为:" + sum);
}
}
class Thread1 implements Runnable {
private int sum1 = 0;
public void run() {
for (int i = 1; i < 500; i++)
sum1 += i;
System.out.println("thread1计算完成 结果为:" + sum1);
}
public int get() {
return sum1;
}
class Thread2 implements Runnable {
private int sum2 = 0;
public void run() {
for (int i = 500; i < 1000; i++)
sum2 += i;
System.out.println("thread2计算完成 结果为:" + sum2);
}
public int get() {
return sum2;
}
}
第二个:
package project11;
public class AddThread {
public static void main(String[] args) {
// TODO Auto-generated method stub
int sum;
Thread1 t1s=new Thread1();//创建线程类
Thread2 t2s=new Thread2();
Thread t1=new Thread(t1s);//创建线程
Thread t2=new Thread(t2s);
t1.setName("thread1");//给线程命名
t2.setName("thread2");
t1.start();//
try {
t1.join();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
t2.start();
try {
t2.join();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
sum=t1s.get()+t2s.get();
System.out.println("最终结果为:"+sum);
}
}
class Thread1 implements Runnable{
private int sum1=0;
public void run(){
for(int i=0;i<500;i++)
sum1+=i;
System.out.println(“thread1计算完成 结果为:”+sum1 );
}
public int get(){
return sum1;
}
}
class Thread2 implements Runnable{
private int sum2=0;
public void run(){
for(int i=500;i<1000;i++)
sum2+=i;
System.out.println(“thread2计算完成 结果为:”+sum2 );
}
public int get(){
return sum2;
}
}