问题是这样的:我编译能通过,但是运行的时候就出现像标题那样的错误,我的环境变量设置是没有问题的,请问这是怎么一回事?谢谢
代码如下:
import java.util.Scanner;
class EraserThread extends Thread
{
private boolean active;
private String mask;
public EraserThread()
{
this('*');
}
public EraserThread(char maskChar)
{
active = true;
mask = maskChar + "\010";
}
public boolean isActive()
{
return active;
}
public void setActive(boolean active)
{
this.active = active;
}
public void run()
{
while(isActive())
{
System.out.print(mask);
try
{
Thread.currentThread().sleep(50);
}
catch(InterruptedException e){}
}
}
}
public class EraserThreadDemo
{
public static void main(String[] args)
{
Scanner scanner = new Scanner(System.in);
while(true)
{
System.out.print("INPUT YOUR NAME:");
String name = scanner.next();
System.out.print("INPUT YOUR PASSWORD:");
EraserThread eraserThread = new EraserThread('#');
eraserThread.start();
String password = scanner.next();
eraserThread.setActive(false);
break;
}
}
}
代码如下:
import java.util.Scanner;
class EraserThread extends Thread
{
private boolean active;
private String mask;
public EraserThread()
{
this('*');
}
public EraserThread(char maskChar)
{
active = true;
mask = maskChar + "\010";
}
public boolean isActive()
{
return active;
}
public void setActive(boolean active)
{
this.active = active;
}
public void run()
{
while(isActive())
{
System.out.print(mask);
try
{
Thread.currentThread().sleep(50);
}
catch(InterruptedException e){}
}
}
}
public class EraserThreadDemo
{
public static void main(String[] args)
{
Scanner scanner = new Scanner(System.in);
while(true)
{
System.out.print("INPUT YOUR NAME:");
String name = scanner.next();
System.out.print("INPUT YOUR PASSWORD:");
EraserThread eraserThread = new EraserThread('#');
eraserThread.start();
String password = scanner.next();
eraserThread.setActive(false);
break;
}
}
}
java inc/xxx/yyy/EraserThreadDemo