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 the function of character?
How do you know if a value is nan?
Who developed java?
What variables are stored in stack?
What is JVM and is it platform independent?
Is java jre still free?
What does file separator do in java?
How we can generate random numbers in java?
What is a java object and java application?
Explain the private protected method modifier?
What is better - 'bit-shift a value' or 'multiply by 2'?
Is ++ operator thread-safe in java?
What are the different approaches to implement a function to generate a random number?
Tell me about different OOPS concepts.
Can we instantiate interface in java?