代码如下:
三个类属同一包。
public class MultiThread1 implements Runnable{
int sum1 = 0;
public void run(){
for(int num = 0;num<=5000;num++){
sum1 += num;
}
System.out.println(sum1);
}
public int getsum(){
return(sum1);
}
}*********************************
public class MultiThread2 implements Runnable {
int sum2 = 0;
public void run(){
for(int num = 5001;num<=10000;num++){
sum2 += num;
}
System.out.println(sum2);
}
public int getsum(){
return(sum2);
}}************************************
public class multThreadRun { public static void main(String[] args) {
int sum = 0;
int sum1 = 0;
int sum2 = 0;
Thread one = new Thread(new MultiThread1());
Thread second = new Thread(new MultiThread2());
one.run();
second.run();
try{
one.join();
second.join();
}catch(InterruptedException ie){
System.out.println(ie.getMessage());
}
sum1 = one.getsum();
sum2 = second.getsum();
System.out.println("sum is "+(sum1+sum2));
}
}
三个类属同一包。
public class MultiThread1 implements Runnable{
int sum1 = 0;
public void run(){
for(int num = 0;num<=5000;num++){
sum1 += num;
}
System.out.println(sum1);
}
public int getsum(){
return(sum1);
}
}*********************************
public class MultiThread2 implements Runnable {
int sum2 = 0;
public void run(){
for(int num = 5001;num<=10000;num++){
sum2 += num;
}
System.out.println(sum2);
}
public int getsum(){
return(sum2);
}}************************************
public class multThreadRun { public static void main(String[] args) {
int sum = 0;
int sum1 = 0;
int sum2 = 0;
Thread one = new Thread(new MultiThread1());
Thread second = new Thread(new MultiThread2());
one.run();
second.run();
try{
one.join();
second.join();
}catch(InterruptedException ie){
System.out.println(ie.getMessage());
}
sum1 = one.getsum();
sum2 = second.getsum();
System.out.println("sum is "+(sum1+sum2));
}
}
在主类里的 sum1 = one.getsum();
sum2 = one.getsum(); 出现问题 ???/
解决不了
希望前辈们帮我看看 不要嫌分少 我没分用了所以请大家见晾!!!!
按照楼主说的,那one.run();second.run();应该是没有问题了
既然run方法可以调用,那为什么getsum不可以呢
second.join();
线程都死了,还能getsum吗
Thread second = new Thread(new MultiThread2());
one,second现在是Thread类型的对象,而Thread类是没有getsum方法的,但有run方法,因此一个可以另一个不可以。