Static и Final в Java: значение и использование с примерами

В Java «статические» и «финальные» — это ключевые слова, которые используются для изменения переменных, методов и классов. Вот некоторые пояснения и примеры их использования:

  1. Статично:

    • Статические переменные: когда переменная объявлена ​​как статическая, это означает, что переменная принадлежит самому классу, а не экземплярам (объектам) класса. Все экземпляры класса используют одну и ту же статическую переменную. Например:
      class MyClass {
       static int myStaticVariable = 10;
      }
      // Accessing static variable
      int value = MyClass.myStaticVariable;
    • Статические методы: когда метод объявлен как статический, это означает, что метод принадлежит самому классу, а не экземплярам (объектам) класса. Статические методы можно вызывать напрямую, используя имя класса, без создания экземпляра класса. Например:
      class MyClass {
       static void myStaticMethod() {
           System.out.println("This is a static method.");
       }
      }
      // Calling static method
      MyClass.myStaticMethod();
  2. Окончание:

    • Окончательные переменные: когда переменная объявлена ​​как окончательная, это означает, что переменную нельзя изменить после присвоения ей значения. Он действует как константа. Например:
      final int myFinalVariable = 5;
      // This will cause a compilation error
      myFinalVariable = 10;
    • Финальные методы: когда метод объявлен как окончательный, это означает, что этот метод не может быть переопределен подклассами. Это полезно, если вы хотите запретить подклассам изменять поведение метода. Например:
      class ParentClass {
       final void myFinalMethod() {
           System.out.println("This is a final method.");
       }
      }
      class ChildClass extends ParentClass {
       // This will cause a compilation error
       void myFinalMethod() {
           System.out.println("Cannot override a final method.");
       }
      }