Examveda
Examveda

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();
	}
}

A. Compile error at line 1 (static x must be only accessed inside static methods)

B. Compile error at line 3 (static methods can't make reference to non-static variables)

C. Compile error at line 4 (invalid argument type for method main)

D. 49

E. Compile error at line 2 (must access x by writing Tester.x)

Answer: Option B

Solution(By Examveda Team)

static methods cannot make references to non-static variables.


This Question Belongs to Java Program >> Declaration And Access Control

Join The Discussion

Related Questions on Declaration and Access Control