what is the difference between static block and static
method

Answer Posted / dharmendra

static block in the block that is used to initiate the class
members such as static int a;

This static block executed when the class loads first time
in memory and and thus it implicitly called by the compiler
not by the help of any one of the object.

class A
{
public A()
{
System.out.println("INSIDE THE CONSTRUCTOR OF THE A");
}

static
{
System.out.println("This is the static block");
}
}

class B
{
public static void main(String arr[])
{
A a = new A();
A b = new A();
}
}



the output of this program can be shown by the use of the
javac B.java
java B

the output generated is:

this is static block
INSIDE THE CONSTRUCTOR OF THE A
INSIDE THE CONSTRUCTOR OF THE A

this shows that the static block executed only ones as the
class loaded. and not at the time of the object created.



static method:

method is declared as static so that they can be called by
the name of the class.methodname();
these method usually not required any instance variable but
they can be use also with the objects.


and its loaded as many times as the object of the class is
created.


class A
{
static
{
System.out.println("This the static block");
}
static void print()
{
System.out.println("This is the class A static method");
}
}

class B
{
public satic void main(String arr[])
{
A a = new A();
A a1 = new A();
a.print(); // A.print();
a1.print(); // A.print();
}
}

the output of this method is :

this is the static block
This is the class A static method
This is the class A static method

Is This Answer Correct ?    22 Yes 2 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What does a boolean method return?

624


Can a main method be overloaded?

569


Can we override private constructor in java?

503


What things should be kept in mind while creating your own exceptions in java?

624


Explain about oops concepts.

630






How to change the priority of thread or how to set the priority of thread?

611


Why bytecode is called bytecode?

583


Can we execute a program without main() method?

529


What is the properties class in java programming?

540


What is literal example?

560


What is the current version of java?

537


What is the use of flag?

577


What is lazy initialization in java?

550


Explain a few methods of overloading best practices in java?

504


How list contains works in java?

550