Home / Programming MCQs / JAVA MCQs / Question

J

Jatin Dubey • 3.78K Points
Extraordinary

Q. Determine output

Code:
public class InitDemo{
	static int i = demo();
	static{
                System.out.print(i);
        }
	InitDemo(){
		System.out.print("hello1");
	}
	public static void main(String... args){
                System.out.print("Hello2");
	}
 	static int demo(){
        	System.out.print("InsideDemo");
		return 10;
	}
}
(A) Compilation error.
(B) IllegalArgumentException is thrown at runtime.
(C) InsideDemo 10 Hello2
(D) Hello2 InsideDemo 10
Explanation by: Jatin Dubey
As soon as the class are loaded static variables are initialized first. To initialize it demo must be called first then then static block executes and then main method is called.

You must be Logged in to update hint/solution

Discusssion

Login to discuss.