Q. What is the result of compiling and running the following code?
public class Tester{
static int x = 4;
int y = 9;
public Tester(){
System.out.print(this.x); // line 1
printVariables();
}
public static void printVariables(){
System.out.print(x); // line 2
System.out.print(y); // line 3
}
public static void main(String... args) { // line 4
new Tester();
}
}
public class Tester{
static int x = 4;
int y = 9;
public Tester(){
System.out.print(this.x); // line 1
printVariables();
}
public static void printVariables(){
System.out.print(x); // line 2
System.out.print(y); // line 3
}
public static void main(String... args) { // line 4
new Tester();
}
}
β
Correct Answer: (B)
Compile error at line 3 (static methods can't make reference to non-static variables)
Explanation: static methods cannot make references to non-static variables.