Статические методы в Java
Статические методы можно вызывать не используя ссылку на объект. В этом их ключевое отличие от обычных методов класса. Для объявления таких методов используется ключевое слово static. На методы, объявленные как static
, накладывается следующие ограничения:
- Они могут непосредственно вызывать только другие статические методы.
- Им непосредственно доступны только статические переменные.
- Они не могут делать ссылки типа
this
илиsuper
.
Пример использования статических методов:
public class StaticMethodClass {
static int staticVar = 3;
int nonStaticVar;
public void nonStaticMethod() {
System.out.println("Нестатический метод");
}
static void staticMethod(int localVar) {
System.out.println("localVar = " + localVar);
System.out.println("staticVar = " + staticVar);
//Нельзя обратиться к нестатической переменной из статического метода
//System.out.println("nonStaticVar = " + nonStaticVar);
}
public static void main(String[] args) {
staticMethod(42);
//Нельзя обратиться к нестатическому методу без указания объекта
//nonStaticMethod();
StaticMethodClass useStatic = new StaticMethodClass();
useStatic.nonStaticMethod();
useStatic.staticMethod(67);
}
}
public class StaticMethodExample {
public static void main(String[] args) {
StaticMethodClass.staticMethod(42);
}
}
Зарегистрируйтесь или войдите, чтобы иметь возможность оставить комментарий.