我对变量的声明有疑问。我正在尝试使用多线程准备代码,但我在声明变量时遇到问题。现在我很困惑,是否可以将 Scanner 放入第二个而不是主类 - 我想是的,但我不知道如何声明变量。异常是 -线程“主”java.lang.RuntimeException 中的异常:无法编译的源代码 - 无法从 test1.PIN.main 的静态上下文中引用非静态变量 ...
public class PIN{
static int a;
class Runner extends Thread{
public void run(){
Scanner sc = new Scanner(System.in);
for(int i= 1; i<4; i++){
System.out.println("PUT your PIN: ");
int a = sc.nextInt();
try {
Thread.sleep(100);
} catch (InterruptedException ex) {
Logger.getLogger(PIN.class.getName()).log(Level.SEVERE, null, ex);
}
if(a ==1234){
System.out.println("PIN OK");
} else {System.out.println("PIN NOK");}
}
}
}
public static void main(String[] args){
Runner r = new Runner();
r.start();