本帖最后由 邵阳 于 2012-7-10 20:17 编辑
按老师写了个死锁,老是编译失败
/*死锁*/
class Demo
{
private boolean p;
Demo(boolean p)
{
this.p=p;
}
public void run()
{
if (p)
{
synchronized(myClock.x1)
{
System.out.println("if...... x1");
synchronized(myClock.x2)
{
System.out.println("if...... x2");
}
}
}
else
{
synchronized(myClock.x2)
{
System.out.println("else...... x1");
synchronized(myClock.x1)
{
System.out.println("else...... x2");
}
}
}
}
}
class myClock
{
static Object x1=new Object();
static Object x2=new Object();
}
class Test
{
public static void main(String[]args)
{
Thread d1=new Thread(new Demo (true));
Thread d2=new Thread(new Demo (false));
d1.start();
d2.start();
}
}
求大神指教
D:\java\zuoye\xiancheng>javac d.java
d.java:219: 错误: 对于Thread(Demo), 找不到合适的构造器
Thread d1=new Thread(new Demo (true));
^
构造器 Thread.Thread(ThreadGroup,Runnable,String,long)不适
(实际参数列表和形式参数列表长度不同)
构造器 Thread.Thread(ThreadGroup,Runnable,String)不适用
(实际参数列表和形式参数列表长度不同)
构造器 Thread.Thread(Runnable,String)不适用
(实际参数列表和形式参数列表长度不同)
构造器 Thread.Thread(ThreadGroup,String)不适用
(实际参数列表和形式参数列表长度不同)
构造器 Thread.Thread(String)不适用
(无法通过方法调用转换将实际参数Demo转换为String)
构造器 Thread.Thread(ThreadGroup,Runnable)不适用
(实际参数列表和形式参数列表长度不同)
构造器 Thread.Thread(Runnable)不适用
(无法通过方法调用转换将实际参数Demo转换为Runnable)
构造器 Thread.Thread()不适用
(实际参数列表和形式参数列表长度不同)
d.java:220: 错误: 对于Thread(Demo), 找不到合适的构造器
Thread d2=new Thread(new Demo (false));
^
构造器 Thread.Thread(ThreadGroup,Runnable,String,long)不适
(实际参数列表和形式参数列表长度不同)
构造器 Thread.Thread(ThreadGroup,Runnable,String)不适用
(实际参数列表和形式参数列表长度不同)
构造器 Thread.Thread(Runnable,String)不适用
(实际参数列表和形式参数列表长度不同)
构造器 Thread.Thread(ThreadGroup,String)不适用
(实际参数列表和形式参数列表长度不同)
构造器 Thread.Thread(String)不适用
(无法通过方法调用转换将实际参数Demo转换为String)
构造器 Thread.Thread(ThreadGroup,Runnable)不适用
(实际参数列表和形式参数列表长度不同)
构造器 Thread.Thread(Runnable)不适用
(无法通过方法调用转换将实际参数Demo转换为Runnable)
构造器 Thread.Thread()不适用
(实际参数列表和形式参数列表长度不同)
2 个错误 |