Всем привет! Я часто с тем, что люди не понимают, что такое static, когда его стоит применять, не понимают разницы между статическим свойством и методом. Когда начал копать чуть глубже и искать подробные ответы, оказалось, что и сам не до конца понимаю. Поэтому решил написать подробный разбор, включить некоторые сторонние темы, чтобы вы знали, когда что лучше использовать. Я уже писал про статические методы, но теперь подробно про всю статику. Давайте сначала разберёмся, что такое статические члены (static members) класса, и чем они отличаются от нестатических (далее — экземплярных)...
В Java вы можете объявлять статические методы в интерфейсах с помощью ключевого слова static. Статические методы в интерфейсах автономны, что означает, что они не работают ни с одним экземпляром интерфейса и не привязаны к реализующему классу. Вот пример того, как объявить статический метод в интерфейсе: public interface MyInterface {
static void myStaticMethod() {
System.out.println("This is a static method in an interface");
}
} Чтобы вызвать этот статический метод, вы можете просто использовать имя интерфейса: MyInterface...