what is the difference between static block and static
method
Answer Posted / mittan aich
static block:
It is the class level one time execution block.After the compilation of the program when we go for running by using the command java <class name> then only the corresponding class will loaded in to RAM and 1st of all the static block of that class will execute even it run before the main method run.
->We place the class level initialization logic here like initialization of static variable.
Ex:
class Alpha
{
static
{
System.out.println("Alpha:static");
}
public void show()
{
System.out.println("Alpha:Show()");
}
}
public class Bita
{
static
{
System.out.println("Bita:static");
}
public static void main(String args[])
{
Alpha a=new Alpha();
a.show();
}
}
OUTPUT:
Bita:static
Alpha:static
Alpha:Show()
.......................
STATIC METHOD:
static method is a method which can loaded into the RAM without any object only class name is enough.
->Actually what happen fnds??A function will execute whn ever it only loaded into the RAm through a object.But some times our requirement is like this ,we have to execute a function but at that time no object cant be created for that
class.at that moment static method is very necessary
(consider about main method of java).
->static method and static variable does not allocated memory in object.but it allocate memory in CONTEXT area of that class.
EX:
class Gamma
{
int count1;
static int count2;
static void show()
{
System.out.println("Gamma:show()");
count1++;//error bcz non static variable.
count2++;//ok
}
public static void main(String args[])
{
Gamma.show();
}
}
| Is This Answer Correct ? | 1 Yes | 0 No |
Post New Answer View All Answers
What is stringreader?
What is the buffer limit?
When object is created and destroyed?
What is the difference between JDBC 1.0 and JDBC 2.0?
What is a finally block?
Why are variables important in research?
What is busy spin, and why should you use it?
Why is java multithreaded?
What is boolean flag in java?
Is it possible to cast an int value into a byte variable? What would happen if the value of int is larger than byte?
What is the maximum size of a string in java?
Can I extend singleton class in java?
What is the use of protected in java?
What is use of super keyword in java?
What are the various access specifiers in java?