As the above class is execute and give the output. I am not able to define the thing which is comment as 1. As we all known the things at comment as 2 is method and comment as 3 is class.and the constructor is type classname{}.

If we specify some veriable or method in this static block, is it become static veriable or static method. if yes, then how to access them in main method.

block preceding with static keyword is static initializer block used to initialize static instance variables it gets executed when class loaded, and not every time new instance is created as static variable are shared by all instances.

while instance initializer block executes every time new instance is created and you can use it to initialize static as well non static member variables.

you may ask than why constructor answer is you can place common initialization code in initializer block. [ September 30, 2005: Message edited by: Santana Iyer ]