Java &引用;找不到符号“;使用throw InterruptedException时
我的线程同时运行,导致它们的输出混淆,所以我在第一个线程上设置了一个延迟,但是我无法让它运行,因为Java拒绝接受InterruptedException。以下是我目前的代码:Java &引用;找不到符号“;使用throw InterruptedException时,java,multithreading,interrupted-exception,Java,Multithreading,Interrupted Exception,我的线程同时运行,导致它们的输出混淆,所以我在第一个线程上设置了一个延迟,但是我无法让它运行,因为Java拒绝接受InterruptedException。以下是我目前的代码: class Evens extends Thread { public void run() { System.out.println(""); System.out.println("Even numbers between 0 and 30:"); Sy
class Evens extends Thread
{
public void run()
{
System.out.println("");
System.out.println("Even numbers between 0 and 30:");
System.out.println("");
boolean isEven;
for (int num = 0; num <=30; num++) //This for loop tests for evenness and then prints it.
{
if(num % 2 == 0)
{
isEven = true;
}
else
{
isEven = false;
}
if(isEven == true)
{
System.out.print(num + ", ");
}
else
{
}
}
}
}
class Odds extends Thread
{
public void run()
{
System.out.println("");
System.out.println("Odd numbers between 0 and 30:");
System.out.println("");
boolean isOdd;
for (int num = 0; num < 30; num++) //This for loop tests for oddness and then prints it.
{
if(num % 2 != 0)
{
isOdd = true;
}
else
{
isOdd = false;
}
if(isOdd == true)
{
System.out.print(num + ", ");
}
else
{
}
}
}
}
class Printer
{
public static void main(String args[])
{
Evens ev = new Evens();
Odds od = new Odds();
throw InterruptedException("Another string is running!");
{
ev.start();
Thread.sleep (4000);
od.start();
}
}
}
类Evens扩展线程
{
公开募捐
{
System.out.println(“”);
System.out.println(“0到30之间的偶数:”);
System.out.println(“”);
布尔isEven;
对于(int num=0;num在引发异常时需要new
关键字
throw new InterruptedException("...");
但是sleep
将抛出它自己的InterruptedException
,因此不需要显式抛出异常
try {
Thread.sleep (4000);
} catch (InterruptedException e) {
...
}
阅读:抛出新的InterruptedException
…是正确的语法。这将消除“找不到符号”错误。但这仍然是严重错误。好吧,它对我来说很好(我知道这是一个丑陋的程序,但它是我丑陋的程序!)。