lets discuss this keyword,this is a reference to the current class object.this can be used with respect to variables,methods and classes.
this with respect to variables:
this keyword is used to preserve the values of the instance variables.What is an instance variable ?
A variable that is declared in the class is known as instance variable.Every object of that class will contain a copy of the variable.Example:
class Code
{
int var=10;//instance variable
methodA()
{
----
---
}
}
this to preserve instance variables:
import java.io.*;
class Code
{
int var=15;
methodA()
{
int var=5;
System.out.println("Local variable is"+var);
System.out.println("Instance variable is"+this.var);
}
}
class MainClass
{
public static void main(String args[])
{
Code c=new Code();
c.methodA();
}
}
Output:
Local variable is 5 Instance variable is 15
this with respect to methods:
As a general procedure,If we want to access a particular method, we create an object to that class and access the desired method. In this process 'this' is used implicitly.import java.io.*;
class Code
{
void methodA()
{
System.out.println("Im in methodA of Code Class");
this.methodB();
}
void methodB()
{
System.out.println("Im in methodB of Code Class");
}
}
class MainClass
{
public static void main(String args[])
{
Code c=new Code();
c.methodA();
}
}
Output :
Im in methodA of Code Class Im in methodB of Code Class
this with respect to constructors:
this keyword is used within a constructor to invoke another overloaded constructor.Usually this is placed in the first line of the calling constructor.Example:
import java.io.*;
class Code
{
Code()
{
this(5);
System.out.println("inside the constructor without parameters");
}
Code(int a)
{
System.out.println("Inside the overloaded constructor with int value "+a);
}
public static void main(String args[])
{
Code c=new Code();//default constructor is called
}
}
Output :
Inside the overloaded constructor with int value 5 inside the constructor without parameters
discuss this keyword
ReplyDelete-------------
شركة تنظيف منازل بالرياض