江湖告急, 在学线程死锁的时候出问题了,求大佬帮忙解决

x630703224 2018-01-09 09:02:45
class Test implements Runnable
{
private boolean flag ;

Test(boolean flag)
{
this.flag = flag;
}
public void run()
{
if(flag)
{
synchronized(Mylock.locka)
{
System.out.println("if locka...");

synchronized(MyLock.lockb)
{
System.out.println("if lockb...");
}
}
}
else
{
synchronized(MyLock.lockb)
{
System.out.println("else lockb...");

synchronized(MyLock.locka)
{
System.out.println("else locka...");

}
}
}
}
}

class MyLock
{
public static final Object locka = new Object();
public static final Object lockb = new Object();

}


class DeadLockTest
{
public static void main (String args[])
{
Test a = new Test(true);
Test b = new Test(false);
Thread t1 = new Thread(a);
Thread t2 = new Thread(b);
t1.start();
t2.start();

}
}







DeadLockTest.java:13: 错误: 找不到符号
synchronized(Mylock.locka)
^
符号: 变量 Mylock
位置: 类 Test
DeadLockTest.java:13: 错误: 非法的类型开始
...全文
222 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
dgqjava 2018-01-09
  • 打赏
  • 举报
回复
L大写
x630703224 2018-01-09
  • 打赏
  • 举报
回复
在控制台报错了阿。。。
yasashii 2018-01-09
  • 打赏
  • 举报
回复
没有报错,运行结果是: else lockb... if locka...

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧