Have a Question?

If you have any question you can ask below or enter what you are looking for!

What is the static modifier in Java?

What is static modifier in Java?
What is static modifier in Java?

What is the static modifier in Java?

What is the static modifier in Java?
  • Static is a modifier applicable to methods and variables but not for classes.
  • You can think of a ‘static’ method or field as if it were declared outside the class definition. In other words, there is only one ‘copy’ of a static field/method. Static fields/methods cannot access non-static fields/methods.
  • We can’t declare a top-level class with static modifier but we can declare the inner class as static(such type of inner are called static nested classes).
  • In the case of instance variables for every object a separate copy will be created but in the case of static variable a single copy will be created at the class level and shared by every object of that class.
package com.java4us;

class Test {
    static int x = 10;
    int y = 20;

    public static void main(String args[]) {
        Test t1 = new Test();
        t1.x = 100;
        t1.y = 200;
        System.out.println(t1.x + "..." + t1.y); // 100...200
        Test t2 = new Test();
        System.out.println(t2.x + ".." + t2.y); // 100..20
    }
}
  • We can’t access instance member directly from the static area but we can access from instance area directly.
  • We can access static members from both instances and the static area directly.
  • For static method overloading and inheritance, concepts are applicable but overriding concepts are not applicable but instead of overriding method hiding concepts are applicable.

Leave a Reply

Your email address will not be published. Required fields are marked *