A)
->if we apply static modifier to the instance method of a class, it becomes a static method or class method.
Static void display ();
->static method can be called with class name as well as object name.
->Sometimes object creation is unnecessary but still some processing should be done by providing a method, static method is the choice.
->without the need of object a static method can be called directly with class name.
->static method is not the behaviour of the object. These are 2 restrictions in the usage of static method.
1.”this” keyword can’t be used.
2. Instance variable and methods can’t be referred (without object creation).
classstaticexample1 {
static int a;
int b;
void x()
{
a=80;
}
void y()
{
x();
z();
//allowed
//here reference is not required.
//because calling method being to the same object class.
}
static void z()
{
//not allowed
b=60;//inside static method you can't refer instance variable.
y();//non static method y() can't be referred by static content.
}
static void Z()
{
a=60;
staticexample1 a=new staticexample1();
a.y();//we can refer inside static method by creating the object.
}
}
class staticexample2 {
static int a;
int b;
void x()
{
a=80;//ok
}/* calling method and called method belong to the same object
*reference not required to call the instance method.
*/
void y()
{
x();
z();
}
static void z()
{
b=60;//not ok
y(); /* not ok
* without object creation
* instance method can't be called from static method.
*/
}
}
Comments
Post a Comment