高分!!!小菜鸟求助关于多线程问题!!!!
package fuck1;
public class root30 {
public static void main(String[] args) {
xiancheng a = new xiancheng();
xiancheng1 b = new xiancheng1();
xiancheng2 c = new xiancheng2();
b.mt=a;
a.start();
b.start();
c.start();
}
}
class xiancheng extends Thread
{
public void run()
{
for (int i=0;i<20;i++)
{
System.out.print("▲");
try {
thread.sleep(1000);
} catch (InterruptedException ie) {
// TODO: Add catch code
ie.printStackTrace();
}
}
}
}
class xiancheng1 extends Thread
{
public xiancheng mt;//这句话是什么意思???? 求大神解释
public void run()
{
for (int i=0;i<20;i++) {
System.out.print("●");
try {
thread.sleep(1000);
} catch (Exception e) {
e.printStackTrace();
}
if(i==10)//当i等于10时,停止线程2的运行,执行线程1和线程3,在线程1和线程3运行完后再运行线程2直到结束
{
try {
mt.join();
} catch (InterruptedException ie) {
ie.printStackTrace();
}
}
}
}
}
class xiancheng2 extends Thread
{
public void run()
{
for (int i=0;i<20;i++)
{
System.out.print("◆");
try {
thread.sleep(1000);
} catch (InterruptedException ie) {
// TODO: Add catch code
ie.printStackTrace();
}
}
}
}
[解决办法]
public xiancheng mt;
mt是一个xiancheng类型的字段。
[解决办法]
如一楼所说。
b.mt=a;//在这赋的值.
在运行b线程启动后,后面有一句 mt.join(),实际上是让a线程先执行完,之后再执行a线程。
[解决办法]
public xiancheng mt;
楼上的都说过了,就是一个xiancheng1的成员变量呗!
楼主的包名亮了。。。
[解决办法]
包名确实亮了
[解决办法]
确实包名亮了,类的命名也有一套 ,所以连自己的写的成员变量都看不出
[解决办法]
额。。。。 我是个菜鸟,请问成员变量可以是我自己定义类型的变量吗? 那这个变量能存储什么类型的数据啊?
[解决办法]