Skip to main content

Static and this keyword


Static Keyword:

     Most of the time static keyword in java use for memory management. We can use static keyword with variables, methods and also with block (Static block).

1. Static with variables:
    If we declare static keyword with variables then it's called static variables. Static variables are use to access or refer common properties of all objects. The static varibels gets memory only once at the time of loading class loading. It makes program more efficient i.e., It saves memory. For example,
    static int length=100;

2. Static with method:
    If we use static keyword with method then it's called static method. The static method is belong to class rather than object of class. Static method can invoke or call without creating instance or object of class. For example,
    static void print(){
        System.out.println("Welcome in Java");
    }

Examples of static variable, method and block is as follows:


class Welcome{
static String textValue = "Welcome to java..";
static void print(){
System.out.println(textValue + " in print() method");
}
void display(){
System.out.println(textValue + " in display() method");
}
}
public class StaticKeyword{
static{
System.out.println("Static block is invoked");
}  
public static void main(String[] args) {
Welcome.print();
Welcome welcome= new Welcome();
welcome.display();
}

}

OUTPUT:
Static block is invoked
Welcome to java.. in print() method
Welcome to java.. in display() method

3. Block OR Static Block
    It is use to initialize static data member. It is execute before main method. For example,
    static{
        System.out.println("This is static block");
    }

This Keyword:

    This keyword is a reference variable which refer to current object.


The uses of this keyword:
  1. this can be used to refer current class instance variable.
  2. this can be used to invoke current class method (implicitly)
  3. this() can be used to invoke current class constructor.
  4. this can be passed as an argument in the method call.
  5. this can be passed as argument in the constructor call.
  6. this can be used to return the current class instance from the method.

For example,
class Employee{
int id;
String name;
public Employee(int id, String name) {
this.id=id;
this.name=name;
}
void print(){
System.out.println("Id : "+id+"\nName : "+name);
}
}
public class ThisKeyword {
public static void main(String[] args) {
Employee emp=new Employee(1,"Sam");
emp.print();
}
}
Output:
Id : 1
Name : Sam

Comments

Popular posts from this blog

Decision Making and Branching Statements / Control Statements

 Introduction     Java is a set of statements which executed sequentially in the order in which they appear. This will happen when option or repetitions of certains are not necessary. However, We have a number of situation, where we may have to change the order of execution of statement on bases of certain conditions. This involves a kind of dicision making to see the particular condition occured or not and the direction of execution will execute according to it.     When program braks the sequential flow and jump on the another part of code then it's called branching . When branching is on particular condition then it's called conditional branching . If branches executes without any particular conditions then it's call unconditional branching .     Java supports such decision making capabilities and supports following statements known as Control statement or Decision making statement .     if statements     switch statement   ...

Jump Statements in java

    Introductions       Loopes perform a set of operations repeatedly until the control variable fails to satisfy the test condition. But in some times we need to skip some of the part of loop then we use the jump statements . For breaking the loop we use continue and break statement . Continue Statement:     When the continue statement called, it will break or stop the current itteration of loop on sameline and start the new iteration. Format of this statement is below:          continue; Brak Statement: After call this statement in the body of loop, it will sop or break the loop on current loop on same line and control goes to the next line after that loop. Format is below:     break; We mostly use this statement in while, do, and for loop concept.

Super and Final keyword

  Super Keyword      The super keyword in java is a reference varible which is use to refer immediate parent class instance variable . Super can use to invoke immediate parent class method and constructors also. 1. To Refer Instance variable of an immediate parent class:      We can use super keyword to access the data member or field of parent class. It is used if parent class and child class have same fields. For example, class Animal{   String color="white";   }   class Dog extends Animal{   String color="black";   void printColor(){   System.out.println(color); System.out.println(super.color); }   }   class TestSuper1{   public static void main(String args[]){   Dog d=new Dog();   d.printColor();   } } Output: black white 2. To Refer method of an immediate parent class:      The super keyword can also be ...