首先声明,我是一只菜鸟。下面的java程序没能够得到"name--zhangshan  sex--male","name--lihong  sex--female"的交替循环输出。我看了很久,不知道错在哪里,求help。谢了!!!!class Q

private String name="unknown";
private String sex="unknown";
public synchronized void put(String name,String sex)
{
this.name=name;
this.sex=sex;
try
{
wait();
}
catch(InterruptedException e)
{
e.getMessage();
}


}
public synchronized void get()
{
System.out.print("name--"+name);
System.out.println("   sex--"+sex);
notify();
}
}
class ThreadA implements Runnable

Q q;
public ThreadA(Q q)
{
this.q=q;
}

int i=1;
public void run()

while(true)
{
if(i==1)
q.put("zhangshan","male");
if(i==0)
q.put("lihong","female");
i=(i+1)%2;
}
}

}
class ThreadB implements Runnable

Q q;
public ThreadB(Q q)
{
this.q=q;
}


public void run()


while(true)
{
 q.get();
}
}

}
class WaitDemo
{
public static void main(String [] args)
{
Q q=new Q();
Thread t1=new Thread(new ThreadA(q));
Thread t2=new Thread(new ThreadB(q));
t1.start();
t2.start();
}
}