i want to read the data from the user in the static block and need to check some condition there but when i am trying to call nextInt() it causes some error
public class Test {
static int B,H;
static{
Scanner s=new Scanner(System.in);
B=H=0;
B=s.nextInt();
H=s.nextInt();
s.close();
}
}
Exception in thread "main" java.lang.ExceptionInInitializerError
Caused by: java.util.NoSuchElementException at java.util.Scanner.throwFor(Scanner.java:862) at java.util.Scanner.next(Scanner.java:1485) at java.util.Scanner.nextInt(Scanner.java:2117) at java.util.Scanner.nextInt(Scanner.java:2076) at Solution.initialise(Solution.java:21) at Solution.(Solution.java:15)
From Java7, it is not possible to compile a program without main method. Before that, we can compile the program without the main method but cannot run the program. Just in case if you are trying any version before Java7, try adding System.exit(0) after s.close() (this will stop the compiler from searching for main methods).